У меня есть несколько таблиц в БД Oracle, и мне нравится выполнять обратный инжиниринг.Каждое имя столбца таблицы БД имеет уникальные инициалы имени таблицы в качестве префикса, например, «ID» как «C_ID», «C_LAST_UPDATED» и т. Д. Во-вторых, существует несколько столбцов, которые являются общими в каждой таблице, например, «X_ID», «X_LAST_UPDATED», где «X"это инициалы таблицы.
Мой вопрос заключается в том, можно ли создать базовую сущность, которая содержит общие свойства, такие как id, последний раз обновленный для вышеупомянутых таблиц?
Заранее спасибо
РЕДАКТИРОВАТЬ:
До сих пор я пытался создать BaseEntity, но, похоже, он не работает, пока сгенерированный код решает проблему, о которой я упоминал ранее, то есть общие свойства имеют разные имена столбцов в каждой таблице.
@MappedSuperclass
public abstract BaseEntity implements java.io.Serializable
{
@Id
@Column(name = "ID", unique = true, nullable = false, precision = 22, scale = 0)
private BigDecimal ID ;
@Temporal(TemporalType.DATE)
@Column(name = "INDATE", nullable = false, length = 7)
private Date INDATE;
//--- Getters & Setters ---
}
@Entity
@Table(name = "TABLE1", schema = "TEMP_1")
public class Entity1 extends BaseEntity
{
@Id
@Column(name = "T1_ID", unique = true, nullable = false, precision = 22, scale = 0)
private BigDecimal ID;
@Temporal(TemporalType.DATE)
@Column(name = "T1_INDATE", nullable = false, length = 7)
private Date INDATE;
//--- Getters & Setters ---
}
@Entity
@Table(name = "TABLE2", schema = "TEMP_1")
public class Entity2 extends BaseEntity
{
@Id
@Column(name = "T2_ID", unique = true, nullable = false, precision = 22, scale = 0)
private BigDecimal ID;
@Temporal(TemporalType.DATE)
@Column(name = "T2_INDATE", nullable = false, length = 7)
private Date INDATE;
//--- Getters & Setters ---
}