Hibernate初学者---5.2.10版本_SchemaExpor 自动生成数据表
来源:互联网 发布:blog域名注册 编辑:程序博客网 时间:2024/06/06 01:28
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;@Entitypublic 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;@Entitypublic 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确认数据表;
阅读全文
0 0
- Hibernate初学者---5.2.10版本_SchemaExpor 自动生成数据表
- Hibernate初学者---自动生成数据表
- Hibernate初学者---schemaExport自动生成联合主键关联数据表
- hibernate注解自动生成数据表
- hibernate注解自动生成数据表
- hibernate注解自动生成数据表
- hibernate注解自动生成数据表出不来?
- hibernate使用SchemaExport自动生成数据表
- 利用hibernate自动生成数据表的方法
- 学习笔记——Hibernate自动生成数据表失败
- JPA自动生成数据表
- 添加注解后,框架没有自动根据实体类生成数据表,Hibernate
- Hibernate 不可以自动创建数据表
- Hibernate不能自动建数据表解决办法
- Hibernate不能自动建数据表解决办法
- 利用hibernate中的SchemaExport生成数据表
- 利用hibernate框架工具生成数据表
- 利用hibernate中的SchemaExport生成数据表
- 内部类
- 【重点突破】——two.js模拟绘制太阳月亮地球转动
- Java多线程之synchronized
- Brandon的IT简史——AT&T(贝尔电话公司)
- 移植Linux-3.4.2内核到S3C2440
- Hibernate初学者---5.2.10版本_SchemaExpor 自动生成数据表
- 【笔记】php常用函数
- 设计模式——代理模式
- pandas中ix loc iloc的区别
- qbxt Day3 DP+DP+贪心
- POJ 2762 单向的连通图
- 【nyoj712】探寻宝藏
- NCPC 2016 A Artwork(并查集)
- 挑选pick