在 Spring Boot 中,Hibernate 有没有办法仅在创建特定实体表后添加一些 data.sql
。 (我不想在初始化 Spring Boot 应用程序时初始化架构和数据)
package io.fall.model;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
@Entity
@Table(name = "userprofile")
public class UserProfile {
@Id
@GeneratedValue
private int id;
private int theme;
private String userName;
UserProfile(){}
public int getTheme() {
return theme;
}
public void setTheme(int theme) {
this.theme = theme;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
}
我想在hibernate创建实体表后插入这些值userprofile
INSERT INTO userprofile (id,theme,userName,summary)
VALUES (1, 1 , 'John Doee'),
(2, 2 , 'Jenny Doee'),
(3, 3 , 'James Doee');
最佳答案
如果使用 hibernate schema generation那么你可以尝试使用importing script files为了您的目的。
spring.jpa.properties.hibernate.hbm2ddl.import_files=data.sql
Hibernate会在schema自动生成后执行脚本文件。
或者,您也可以使用 javax.persistence.schema- Generation.create-script-source
属性(请参阅文档的 this section)来达到相同目的。
关于java - hibernate可以在实体表创建后初始化数据吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68448853/