Hibernate自动创建表--配置文件
2010-12-18 10:48
344 查看
只要在hibernate.cfg.xml添加这句话,就可以自动生成数据表
<property name="hibernate.hbm2ddl.auto">update</property>
update:表示自动根据model对象来更新表结构,启动hibernate时会自动检查数据库,如果缺少表,则自动建表;如果表里缺少列,则自动添加列。
还有其他的参数:
create:启动hibernate时,自动删除原来的表,新建所有的表,所以每次启动后的以前数据都会丢失。
create-drop:启动hibernate时,自动创建表,程序关闭时,自动把相应的表都删除。所以程序结束时,表和数据也不会再存在。
PS:数据库要预先建立好,因为hibernate只会建表,不会建库
==========================================
表结构和数据总是在程序执行的时候无端的修改,折腾了好长时间,查了很长时间hibernate的数据库映射文件和接口程序,始终没有发现有什么错误,到最后才发现了它!
<property name="hibernate.hbm2ddl.auto" value="update" />
解释如下:
hibernate.hbm2ddl.auto Automatically validate or export schema DDL to the database when the SessionFactory is created. With create-drop, the database schema will be dropped when the SessionFactory is closed explicitly. eg. validate | update | create | create-drop
其实这个参数的作用主要用于:自动创建|更新|验证数据库表结构。
如果没有此方面的需求建议set value="none".
其它几个参数的意思:
validate 加载hibernate时,验证创建数据库表结构
create 每次加载hibernate,重新创建数据库表结构
create-drop 加载hibernate时创建,退出是删除表结构
update 加载hibernate自动更新数据库结构
<property name="hibernate.hbm2ddl.auto">update</property>
update:表示自动根据model对象来更新表结构,启动hibernate时会自动检查数据库,如果缺少表,则自动建表;如果表里缺少列,则自动添加列。
还有其他的参数:
create:启动hibernate时,自动删除原来的表,新建所有的表,所以每次启动后的以前数据都会丢失。
create-drop:启动hibernate时,自动创建表,程序关闭时,自动把相应的表都删除。所以程序结束时,表和数据也不会再存在。
PS:数据库要预先建立好,因为hibernate只会建表,不会建库
==========================================
表结构和数据总是在程序执行的时候无端的修改,折腾了好长时间,查了很长时间hibernate的数据库映射文件和接口程序,始终没有发现有什么错误,到最后才发现了它!
<property name="hibernate.hbm2ddl.auto" value="update" />
解释如下:
hibernate.hbm2ddl.auto Automatically validate or export schema DDL to the database when the SessionFactory is created. With create-drop, the database schema will be dropped when the SessionFactory is closed explicitly. eg. validate | update | create | create-drop
其实这个参数的作用主要用于:自动创建|更新|验证数据库表结构。
如果没有此方面的需求建议set value="none".
其它几个参数的意思:
validate 加载hibernate时,验证创建数据库表结构
create 每次加载hibernate,重新创建数据库表结构
create-drop 加载hibernate时创建,退出是删除表结构
update 加载hibernate自动更新数据库结构
如果发现数据库表丢失或新增,请检查hibernate.hbm2ddl.auto的配置 可设置 <property name="hibernate.hbm2ddl.auto" value="none" />
文章来自http://blog.csdn.net/zwhfyy/archive/2009/09/03/4514966.aspx相关文章推荐
- 使用hibernate自动在MYSQL中创建表,极其简单,改下配置文件。
- ssh整合思想 Spring与Hibernate的整合ssh整合相关JAR包下载 .MySQLDialect添加了第57区的方言解决没有异常,hibernate.dialect核心配置文件就是无法自动update创建表
- Myeclipse如何自动创建hibernate以及配置struts2以及数据库表创建映射文件 详解
- hibernate通过配置文件和方法自动创建表。
- [转]【Java EE】ANT+Xdoclet自动生成Hibernate配置文件
- hibernate工具类更具配置文件创建table,和创建currentsession..
- 添加JBoss插件中的hibernate tools后怎么创建hibernate配置文件和对数据库的表进行反转映射
- 为 eclipse 的 hibernate 配置文件(*.hbm.xml)加上自动提示功能
- 为 eclipse 的 hibernate 配置文件(*.hbm.xml)加上自动提示功能
- Hibernate的学习(创建配置文件hibernate.cfg.xml)
- 在MyEclipse中利用XDoclet自动生成Hibernate配置和映射文件
- 第一个 想创建文件时 文件的头部注释会自动生成我自己想要的信息 怎么配置呢
- Android Studio SVN配置忽略文件 1.用Android Studio创建一个项目,会在根目录和Module目录下自动生成.gitignore文件,貌似是Git的配置文件,
- 为 eclipse 的 hibernate 配置文件(*.hbm.xml)加上自动提示功能
- 利用XDoclet自动生成Hibernate配置文件
- MyEclipse自动生成hibernate实体类和配置文件攻略
- 利用Hibernate工具,通过xml文件自动创建表
- Hibernate学习笔记(1)----用Ant与XDoclet自动生成Hibernate配置文件与映射文件
- 在MyEclipse自动生成hibernate配置文件
- java中根据hibernate配置文件自动建表