[英]How to auto-populate a table upon creation using Hibernate3-Maven-Plugin
我有一個枚舉 class 在使用 Hibernate3 Maven 插件時創建一個名為 ROLE 的表:
@Entity
@Table(name = "ROLE")
public enum UserRole {
ADMIN("ADMIN"),
DEVELOPER("DEVELOPER"),
CLIENT("CLIENT");
private long id;
private String role;
UserRole(String role) {
this.role = role;
}
@Id
@Column(name = "ID")
@GeneratedValue(strategy = GenerationType.AUTO)
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
@Column(name = "ROLE", nullable = false)
@Enumerated(EnumType.STRING)
public String getRole() {
return role;
}
public void setRole(String role) {
this.role = role;
}
}
該表在由 Maven 插件創建時為空。 我不確定我是否做對了,因為我沒有將枚舉與 Hibernate 一起使用的經驗。 我應該怎么做才能讓表在插件創建時自動填充值 ADMIN、DEVELOPER 和 CLIENT? 這甚至可能嗎?
這甚至可能嗎?
不,不可能使用 Hibernate3 Maven 插件。
我應該怎么做才能讓表在插件創建時自動填充值 ADMIN、DEVELOPER 和 CLIENT?
您需要確保您的應用程序在啟動時將這些值保存到表中。 這樣,您可以在執行任何處理之前確保這些值的存在。
不知道對你有沒有幫助,但還有其他一些方法可以做到:
使用Ant 任務執行 SQL 查詢(並從maven-antrun-plugin調用它)
(如果你使用 Spring)你可以使用jdbc:initialize-database來初始化數據源
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.