hibenate.hbm2ddl.auto属性详解

来源:互联网 发布:python sin cos 编辑:程序博客网 时间:2024/05/22 06:18

今天让我们一起学学hibenate.hbm2ddl.auto里面的属性吧!

在之前先看看 hibernate开发方式的三种方式:

  1、Domain object -> mapping(或用 注解)->db(官方推荐)

  2、由DB开始,用工具生成mapping和Domain object。(使用较多)

  3、由映射文件开始。

这里我用第一种(官方推荐):

如果要自动的创建出对应的数据库,需要配置(hibernate.cfg.xml)如下

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

这个配置有四个属性值: create , update , create-drop, validate

create : 表示当我们的应用程序加载hibernate.cfg.xml [也就是调用  new Configuration().config(); ]就会根据映射文件,创建出数据库表,每次都会重新创建,原来表中的数据就没有!!!

update: 表示如果数据库中没有该表,则创建该表,如果有表,则看有没有改变表结构,如有,则更新表结构,但不会删除原有的数据.

create-drop:在显示关闭 sessionFactory时,将drop掉数据库中刚创建的表

validate:相当于每次插入数据之前都会验证数据库中的表结构和hbm文件的结构是否一致

 

在开发测试中,我们配置哪个都可以测试,建议用update,但是如果项目发布后,最好自己只配置一次,让对应的数据库表生成完后就取消配置.

原创粉丝点击