У меня есть объект, который является владельцем двух Transient
собственности firstName
и lastName
, и эти два свойства могут быть извлечены из третьего свойства FullName
, который является определенный пользователем тип в базе данных.Как зимуют инициализировать объект
Теперь я хочу извлечь свойства заполнения firstName
и lastName
после получения сущности из базы данных.
@Entity
@Table(name = "User")
public class User {
@Id
private Integer id;
private FullName fullName;
@Transient
private String firstName;
@Transient
private String lastName;
...
public void setFullName(FullName fullName){
this.fullName = fullName;
this.firstName = fullName.getFirstName();
this.lastName = fullName.getLastName();
}
}
Однако firstName
и lastName
всегда нуль.
И я обнаружил, что setFullName
никогда не включался, когда я открываю режим отладчика.
Что происходит?
Он также мог бы просто не хранить эту избыточную информацию в переходных полях и просто возвращать fullName.getFirstName() из getFirstName() getter. –