我有一个枚举类,它在使用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中使用枚举的经验。我应该怎么做才能在插件创建时自动填充表中的值、管理员、开发人员和客户端?这有可能吗?
发布于 2011-05-30 12:46:46
,这有可能吗?
不,使用Hibernate3 Maven插件是不可能的。
我应该怎么做才能在插件创建时自动填充表中的值、管理员、开发人员和客户端?
您需要确保应用程序在启动时将这些值持久化到表中。这样,您就可以在执行任何处理之前确保这些值的存在。
发布于 2011-05-30 14:01:02
不知道对你有没有帮助,但还有其他一些方法可以做到:
Spring使用Ant task for executing SQL queries (并从您正在使用的maven-antrun-plugin)
https://stackoverflow.com/questions/6172299
复制相似问题