JPA提供了几种数据库表映射
策略,可以自动创建表
、更新表结构
,常用的策略包括:
Create
:每次启动应用程序时,JPA会删除已存在的表并重新创建新的表结构
。Update
:JPA会根据实体类的变化
来更新表结构,例如新增字段、删除字段等,但不会删除表中已有的数据。Validate
:JPA会根据实体类的映射信息验证数据库表的结构是否与实体类的映射一致,不会进行任何修改。
@Entity
public class Book {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String title;
private String author;
}
在应用程序的配置文件中,可以通过设置spring.jpa.hibernate.ddl-auto
属性来指定数据库表映射策略,例如:
spring.jpa.hibernate.ddl-auto=create
通过上述配置,JPA会在每次应用程序启动时删除已存在的表并创建新的表结构。
如果将ddl-auto属性设置为update:
spring.jpa.hibernate.ddl-auto=update
则JPA会根据实体类的变化来更新表结构,例如新增字段、删除字段等,但不会删除表中已有的数据。