0
如何将JPA中Id的默认值设置为38?我知道我可以使用@Column(length = 38)设置单个ID长度,但是如何在全局中更改它?JPA中Id的默认长度
如果这对于JPA来说是不可能的,也许是Spring Data或Hibernate?
如何将JPA中Id的默认值设置为38?我知道我可以使用@Column(length = 38)设置单个ID长度,但是如何在全局中更改它?JPA中Id的默认长度
如果这对于JPA来说是不可能的,也许是Spring Data或Hibernate?
我想你应该添加一个抽象父类的实体,这是我AbstractEntity:
@MappedSuperclass
public class AbstractEntity {
@Id
@GeneratedValue
@Column(length=38)
private Long id;
@Column(name = "created_at")
private Date createdTime;
@Column(name = "updated_at")
private Date updatedTime;
@PrePersist
public void init() {
if(createdTime == null) {
createdTime = new Date();
}
updatedTime = new Date();
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public Date getCreatedTime() {
return createdTime;
}
public void setCreatedTime(Date createdTime) {
this.createdTime = createdTime;
}
public Date getUpdatedTime() {
return updatedTime;
}
public void setUpdatedTime(Date updatedTime) {
this.updatedTime = updatedTime;
}
}
您可以使用像AbstractPersistenObject,其中定义id字段一个共同的基类。 –
[这](http://stackoverflow.com/questions/197045/setting-default-values-for-columns-in-jpa)最有可能是你想要的 – XtremeBaumer
默认“长度”?也许这取决于它是什么类型。由于'@ Column'“length”仅适用于字符串(请参阅JPA javadocs),那么您正在使用无效的东西 –