Hibernate初學者---5.2.10版本_SchemaExpor 自動生成資料表
Hibernate 版本: v5.2.10
Eclipse版本:v4.7.1
JDK版本: v1.8
MySQL版本:v5.7
網上Hibernate資料少得可憐,又不能半途而廢,真心想好好學一下Hibernate. 直接上原始碼。
這是一個外來鍵關聯的案例,所以有兩個POJO類。
第一個POJO類
package com.bai.fan;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.OneToOne;
@Entity
public class One2One_A {
int id;
String name;
One2One_B w2;
@Id
public int getId() {
return id;
}
public String getName() {
return name;
}
@OneToOne
public One2One_B getW2() {
return w2;
}
public void setId(int id) {
this.id = id;
}
public void setName(String name) {
this.name = name;
}
public void setW2(One2One_B w2) {
this.w2 = w2;
}
}
第二個POJO類
package com.bai.fan;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
@Entity
public class One2One_B {
int id;
String name;
@Id
@GeneratedValue
public int getId() {
return id;
}
public String getName() {
return name;
}
public void setId(int id) {
this.id = id;
}
public void setName(String name) {
this.name = name;
}
}
hibernate.cfg.xml
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="connection.url">jdbc:mysql://localhost/hibernate</property>
<property name="connection.username">root</property>
<property name="connection.password">shwythnn00</property>
<property name="dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property>
<property name="show_sql">true</property>
<property name="hibernate.format_sql">true</property>
<property name="hibernate.hbm2ddl.auto">update</property>
<property name=""></property>
<!-- <mapping class="com.bai.fan.Zhulei" /> -->
<mapping class="com.bai.fan.One2One_A" />
<mapping class="com.bai.fan.One2One_B" />
// 這裡要特別注意,兩個POJO類的 Mapping 都要配置。
</session-factory>
</hibernate-configuration>
Junit TEST類
package com.bak.bum;
import java.util.EnumSet;
import org.hibernate.boot.Metadata;
import org.hibernate.boot.MetadataSources;
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
import org.hibernate.service.ServiceRegistry;
import org.hibernate.tool.hbm2ddl.SchemaExport;
import org.hibernate.tool.schema.TargetType;
import org.junit.Test;
public class MyTest {
@Test
public void test() {
ServiceRegistry serviceRegistry=new StandardServiceRegistryBuilder().configure().build();
Metadata metadata = new MetadataSources(serviceRegistry).buildMetadata();
SchemaExport schemaExport = new SchemaExport();
schemaExport.create(EnumSet.of(TargetType.DATABASE), metadata);
}
}
執行結果
由於是外來鍵關聯,Hibernate 做了三次操作:create兩次,alter一次
MySQL確認資料表;
相關推薦
Hibernate初學者---5.2.10版本_SchemaExpor 自動生成資料表
Hibernate 版本: v5.2.10 Eclipse版本:v4.7.1 JDK版本: v1.8 MySQL版本:v5.7 網上Hibernate資料少得可憐,又不能半途而廢,真心想
Hibernate初學者---自動生成資料表
步驟: 1, 首先必須保證有POJO類,並且存在annotation註解 package com.bai.fan; import javax.persistence.Entity; import javax.persistence.Id; @Ent
關於使用python來實現mysql自動生成資料表
注:環境 windows 7 旗艦版 python 3.6.4 xlrd模組 pymysql模組 mysql 8.0.12 前幾天拿到一個專案需要在資料庫建立‘一堆’的表!於是就有了一個偷懶的想法! 經過努力終於完成了‘乞丐版’程式碼如下: # -*-
Django學習筆記(二)--通過model自動生成資料表
首先要編寫好自己的model from django.db import models # Create your models here. class Article(models.Model
Spring 4.2.5 + Hibernate 5.2.10 報錯筆記
專案離線無網開發,無法帖出報錯控制檯資訊 當@Transactional的isolation屬性指定了值時Hibernate執行總是抱錯無法執行 通過跟蹤程式碼發現Hibernate 5.2.10的C
Hibernate 5.2.10 Unknow Entity exception
今天回顧了一下Hibernate,下載了最新版本的5.2.10.Final ,結果在測試的時候一直報錯Unknow Entity 原來是session的建立方式和之前4的有了很大的差別 @Bef
6.5 2.10-2.13
cp mv 查看文檔常用命令 PATH環境變量 2.10 環境變量PATH [root@hyc-01-01 ~]# echo $PATH/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/binWhich會從以上環境變量PATH列出的
hibernate-release-5.2.4.Final
-- hiberna hibernate targe fin AS 配置文件 file href hibernate-release-5.2.4.Final hibernate.cfg.xml 配置文件模板 --->點擊下載 運行測試Main方法Java文件 ---
小白學ES 02-Linux中部署Elasticsearch單機服務(5.6.10版本)
目錄 1 前提: 安裝JDK 2 準備安裝包 3 建立ES專用使用者 4 啟動ES服務 5 驗證ES服務是否可用 6 關閉ES服務 7 重啟ES服務 8 常見問題的解決 此部署過程以Elasticsearch-5.6.10版本為例, 後續的學習和演示也用此版本.
Hibernate(5.3.7版本)核心XML檔案
1、*.hbm.xml檔案詳解 該檔案是將物件持久化到關係型資料庫中的相關資訊,結構基本相同: <?xml version="1.0"?> <!--對映檔案的dtd資訊--> <!DOCTYPE hibernate-mapping PUBLIC "-
Kibana外掛的安裝(5.6.10版本)
1 Kibana是什麼 Kibana是一個配合Elasticsearch使用的、開源的資料分析和視覺化平臺, 可以與Elasticsearch中儲存的索引文件進行互動. 使用Kibana能執行高階的資料分析, 並通過圖表、表格、地圖等形式顯示分析結果.
Python doc v2.7.6 ------ 5.2.10.1. Generator-iterator methods
This subsection describes the methods of a generator iterator. They can be used to control the execution of a generator function. Note
zbb20170928 spring hibernate mysql 保存數據時自動生成 主鍵 設置
ring integer 主鍵 mys unique 技術分享 ner img rate @Id @GeneratedValue @Column(name = "id", unique = true, nullable = false) public In
SpringMVC學習系列-後記 結合SpringMVC和Hibernate-validator,根據後臺驗證規則自動生成前臺的js驗證程式碼
在SpringMVC學習系列(6) 之 資料驗證中我們已經學習瞭如何結合Hibernate-validator進行後臺的資料合法性驗證,但是通常來說後臺驗證只是第二道保險,為了更好的使用者體驗會現在前端進行js驗證,驗證通過之後資料才能提交到後臺,那麼我們不可避免的要在前端的頁面中寫對應的js驗證程式碼。
利用powerDesigner16.5連線oracle資料庫並自動生成表結構圖過程及所遇到的坑
配置過程 1、點選file-->new model 2.選擇model types ,選擇physical data model ,mode name是你自己新建的名字,這個隨意,DBMS是你對應資料庫版本,我的是oracle version11g,選擇
ASP.NET Core 中文文件 第二章 指南(4.10)檢查自動生成的Detail方法和Delete方法
開啟 Movie 控制器並檢視 Details 方法: // GET: Movies/Details/5 public async Task<IActionResult> Details(int? id) { if (id == null) { return No
更新 AndroidStudio 2.3 版本後,生成簽名的 apk(Generate Signed APK)時出現的新問題
更新AndroidStudio 2.3版本後,生成簽名的apk(Generate Signed APK)時出現新問題,特此記錄一下:(1)檢測更為嚴格一下子冒出很多之前沒見過的問題:可能是從Eclips
hibernate 自動生成資料庫表
只要在hibernate.cfg.xml新增這句話,就可以自動生成資料表 <property name="hibernate.hbm2ddl.auto">update</property> update:表示自動根據model物件來更新表結構,啟動hibernate時會自動檢查資料庫
添加註解後,框架沒有自動根據實體類生成資料表,Hibernate
@Id註解:指定實體Bean的主鍵對映,需在getter方法上標註。@GeneratedValue註解:用於指定主鍵生成策略,註解支援的主鍵生成策略有: AUTO——相當於配置檔案中的native,根據底層資料庫自動選擇使用IDENTITY、SEQUENCE、TABLE型別(預設值)TABLE——使用ta
【Hibernate】自動生成資料庫表
雖說整體上對SSH有一定的把控使用能力,但還是見微知著,點滴積累。Hibernate本意是冬眠,很好的封裝了JDBC和資料庫互動,實現了物件的持久化操作。所以也可以理解物件的持久化其實就是“冬眠”