Hibernate无法自动创建数据库表

今天在学习Hibernate的时候,通过JavaBean实体类和hbm映射文件自动创建数据库表,实体类和对象关系映射文件写的都没有错误,运行时也不报错,但是就是没生成数据库表,查了半天才发现是因为 hibernate.cfg.xml文件中缺少了一个自动创建数据库表的语句:

update

因此,如果选择使用Hibernate官方推荐的通过对象和关系映射文件生成数据库表的方式进行开发,一定不要忘记在hibernate.cfg.xml文件中加上个语句。


hibernate.hbm2ddl.auto 是Hibernate的一个属性,有四个值:create,create-drop,update,validate;

各自的具体含义如下:


 

 

 

 
 
本来这个属性的产生是为了测试数据的,我觉得利用这个自动建表非常方便。利用这段代码:
 
create


但是,在实际开发中却会碰到无法自动创建数据库表的情况,其中一种情况是:由于实体类的属性中出现了sql关键字,hibernate将不会生成ddl来创建表结构。


你可能感兴趣的:(hibernate)