public void createdata(){
   SchemaExport export =new SchemaExport(new Configuration().configure());
   export.create(true, true);
}
这东西Mysql可以测试成功,但是在Oracle和Server SQl,没成功,什么也没显示。
这语句运行后Hibernate里面的映射文件设置的表关系,会自动创建到Mysql里面,但是Oracle没有成功,请问这是为什么这个功能确实很不错,以后直接把关系写映射文件,不用建表

解决方案 »

  1.   

    只要在hibernate.cfg.xml添加这句话,就可以自动生成数据表 
    <property name="hibernate.hbm2ddl.auto">update</property> update:表示自动根据model对象来更新表结构,启动hibernate时会自动检查数据库,如果缺少表,则自动建表;如果表里缺少列,则自动添加列。 还有其他的参数: 
    create:启动hibernate时,自动删除原来的表,新建所有的表,所以每次启动后的以前数据都会丢失。 create-drop:启动hibernate时,自动创建表,程序关闭时,自动把相应的表都删除。所以程序结束时,表和数据也不会再存在。 PS:数据库要预先建立好,因为hibernate只会建表,不会建库