hibernate.cfg.xml 中hbm2ddl.auto属性配置说明

来源:互联网 发布:番摊软件下载 编辑:程序博客网 时间:2024/06/07 04:05

简单说一下hibernate中hbm2ddl.auto参数的配置。先放一张图来了解,hibernate的工作流程。

hibernate工作流程主要为以下步骤。

1、Configuration接口:负责配置并启动Hibernate

2、SessionFactory接口:负责初始化Hibernate

3、Session接口:负责持久化对象的CRUD操作

4、Transaction接口:负责事务

5、Query接口和Criteria接口:负责执行各种数据库查询

注意:Configuration实例是一个启动期间的对象,一旦SessionFactory创建完成它就被丢弃了

hbm2ddl.auto 几个常用参数为create、update、validate。

create: 加载hibernate配置文件时,先删除数据库中已经存在的表,然后在根据映射文件新建表结构。(数据会丢失)

update:根据映射文件,更新数据库表结构,但是并不会删除数据库中已经存在的字段(即使映射文件中没有该字段,也不会删除)

validate:验证映射文件,和数据库中的表表结构是否对应(其中,数据库表中可以包含映射文件中没有的字段),如果映射文件上的某个字段不存在与数据库表中,报异常。


其中update 使用较多。

如果你的数据一直丢失,请查看是否hibernate.cfg.xml配置文件中hbm2ddl.auto 参数设置为 create。