HibernaHibernate 自动创建表的方法 ( 自动创建表的方法

我们从网上搜索到的hibernate源码中很多时候只有vo和配置文件,但没有创建表的sql脚本。

很多时候需要我们反向创建表。一般情况下有如下两种方法:

 

1:

在配置文件中加上

 <propertyname="hibernate.hbm2ddl.auto">create</property>

这个语句,然后我们再执行任何检索、更新等操作的时候就会自动建表

 

2:

编写一个方法,方法内容如下:

  Configuration conf=new Configuration();
  conf.configure("/hibernate.cfg.xml");
  SchemaExport dbExport=newSchemaExport(conf);
  dbExport.create(true,true);

new SchemaExport(new AnnotationConfiguration().configure()).create(false, true);

 

 

上面两种方法虽然都能反向创建表。但我个人建议仅在练习中如上述方法创建。因为存在以下问题:

 

1:只能创建表不能创建数据库

2:创建的表的数据类型、长度经常跟我们实际需要不符。

3:第一种方式每次执行都会把以前旧表删除再次创建新表,所以执行完毕后一般要把这个语句注释掉或删除。

4:缺少初始化数据。

你可能感兴趣的:(Hibernate)