Как манипулировать атрибутом @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
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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