为了将我的应用程序的日志记录信息捕获到表中,我正在设计三个表,如附图所示。
LogType (表是静态表),它只有两列,两行固定Id = 1,2和Type = Info,Debug
INFOLOG(表)和DEBUGLOG表将有其他相应的信息。
我的问题是哪种继承策略最适合这种情况,我想到子类的表,因为我的超级表(日志类型)是常量且不会改变。请在注释中加上一些注释示例。
所以我的基类是
@Entity
@Inheritance(strategy=InheritanceType.JOINED)
@MappedSuperclass
public abstract class LogType implements Serializable
{
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "LogTypeId", nullable = false, updatable = false)
private Integer logTypeId;
@Column(name = "LogTypeName", unique = true, nullable = false, length = 10)
private String logTypeName;
public LogType() {
super();
}
public LogType(final Integer logTypeId, final String logTypeName) {
super();
this.logTypeId = logTypeId;
this.logTypeName = logTypeName;
}
}