我有一个抽象类,它提供了一些要继承的 EJB 实体的一些通用功能。其中之一是时间戳列。
public abstract class AbstractEntity {
...
private long lastModified;
...
@Column
public long getLastModified() {
return lastModified;
}
public void setLastModified(long ts) {
lastModified = ts;
}
}
和
@Table
@Entity
public class MyEntity extends AbstractEntity {
...
private Long key;
private String value;
...
@Id
public Long getKey() {
return key;
}
public void setKey(Long k) {
key = k;
}
@Column
public String getValue() {
return value;
}
public void setValue(String txt) {
value = txt;
setLastModified(System.currentTimeMillis());
}
}
问题是时间戳列未添加到数据库表中。是否需要将一些注释添加到 AbstractEntity 以便将 lastModified 字段作为列继承?
我尝试将 @Entity 添加到 AbstractEntity 但这导致部署时出现异常。
org.hibernate.AnnotationException: No identifier specified for entity:
AbstractEntity