Предполагая JPA, а не строго Hibernate, вы можете сделать это, применив @Embedded
к паре получатель / установщик, а не к самому частному члену.
@Entity
class User implements Serializable {
@Id @GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
@Access(AccessType.PROPERTY)
@Embedded
private Profile profile;
public Profile getProfile() {
return profile;
}
public void setProfile(Profile profile) {
this.profile = profile;
this.profile.setUser(this);
}
// ...
}
Однако я бы задал вопрос, является ли встроенная сущность тем, что вам нужно в этом случае, в отличие от отношения @OneToOne или просто "сглаживания" класса Profile в User. Основным аргументом в пользу @Embeddable является повторное использование кода, что маловероятно в этом сценарии.