建表策略

配置自动生成表(建表策略)

1.1. 配置属性名称:hibernate.hbm2ddl.auto

如果需要生成表,只需要表名,列名以及对应列名的类型,这些全部在持久类里面都有定义

创建表的时间:成功获取到EntityManagerFactory对象

1.2. create-drop

这个开发一般不会用,面试会被问到

先删除表,再创建表,再删除表

删除表的时间:必须把EntityManagerFactory关闭

1.3. create 只有在测试的时候使用

先删除表,再创建表,不会再删除表

如果更改了domain类的映射,会马上生效

1.4. update 用在测试和web项目(开发的时候使用)

如果没表就根据最新的映射信息来创建表

如果表里面已经有这个属性,如修改属性的长度,不会更新到表里面

需要更新这个列先删除表或者删除这个属性对应的列名

如果表里面没有属性,映射信息存在,会增加这个列

1.5. validate 用在系统已经上线或者客户给定了数据库

表不存在,会抛出异常

Domain类映射信息少属性,表比映射定义的列要多,不会报错

反之,抛出异常

核心 API包含咱们昨天学习的几个对象,今天我们将对他们进行相应的分析:

原文地址:https://www.cnblogs.com/xiaoruirui/p/11581593.html