Как манипулировать атрибутом @Transient в моей сущности JPAJAVA

Программисты JAVA общаются здесь
Anonymous
Как манипулировать атрибутом @Transient в моей сущности JPA

Сообщение Anonymous »

В моем приложении есть столбец, помеченный @Transient.
Я не могу удалить аннотацию, не нарушив работу некоторых служб приложения.
Однако для новых функций , мне нужна настойчивость.
Я пробовал кое-что с наследованием
(@Inheritance(strategy = InheritanceType.SINGLE_TABLE))
но не добился хороших результатов .
Моим окончательным решением было дублировать сопоставление сущностей таблицы, создав две сущности для одной таблицы. Я удалил атрибут из родительского класса и переназначил его дочернему классу.

Код: Выделить всё

@MappedSuperclass
public abstract classe A {
private String attributeA
}
@MappedSuperclass
public abstract classe B extends A {
private String attributeB
}

@Entity
@Table(name = "exemple")
public class C extends B {
private String noTransient
}

@Entity
@Table(name = "exemple")
public class D extends B {
//this class doesnt need the attribute
@Transient
private String noTransient
}

В этом случае моя старая сущность с @Transient теперь равна C, старые службы приложения работают как прежде, а новая сущность D используется для моих новых служб.
p>
Я почти уверен, что смогу найти лучшее решение. Можете ли вы высказать свое мнение

Подробнее здесь: https://stackoverflow.com/questions/785 ... entity-jpa

Вернуться в «JAVA»