关于Hibernate5.x的那点事

1.如果采用程序建表:

4.x版本:

Configuration cfg = new Configuration().configure();
        SchemaExport se = new SchemaExport(cfg);
        se.create(true,true);

5.x版本:

ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder().configure().build();
        Metadata metadata = new MetadataSources(serviceRegistry).buildMetadata();
        SchemaExport schemaExport = new SchemaExport();
        schemaExport.create(EnumSet.of(TargetType.DATABASE), metadata);

通常的话,在hibernate.cfg.xml配置文件中,添加代码:

<property name="hbm2ddl.auto">create</property>

这样,当建立sessionFactory时,hibernate会自动检测数据库中是否有表,如果有,删除原来的表。如果没有,则自动建表,再做事务处理。

2.关于JDK版本

hibernate5.x要求JDK版本最低要1.7

hibernate5.x加入了JDK1.8支持,等待已久的LocalTime类可配置了。

hibernate5.x将Date类和Calendar类映射成了long类型,也就是说,在数据库中,java.util.Date类型的数据会以bigint类型保存,也就是日期的毫秒数。

上一篇:预备作业02:体会做中学(Learning By Doing)


下一篇:iOS及Mac开源项目和学习资料【超级全面】