У меня много разных отношений между моей таблицей пользователей и профилем.Поэтому я создал сущность UserProfile
public class User implements Serializable {
private static final long serialVersionUID = 1L;
@Id
private Integer id;
private String email;
@JsonBackReference
@OneToMany(mappedBy = "user", cascade = CascadeType.ALL)
private List<UserProfile> userProfiles = new ArrayList<UserProfile>();
public User() {
}
GETTER / SETTER
}
public class Profile implements Serializable {
private static final long serialVersionUID = 1L;
@Id
private Integer id;
private String libelleProfile;
@JsonManagedReference
@OneToMany(mappedBy="profile", cascade = CascadeType.ALL)
private List<UserProfile> userProfiles = new ArrayList<UserProfile>();
GETTER / SETTER
}
public class UserProfile implements Serializable {
private static final long serialVersionUID = 1L;
@Id
private Integer id;
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "idUser")
private User user;
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "idProfile")
private Profile profile;
}
Когда я выполняю поиск, чтобы получить информацию о моем пользователе, он не получает мне свой профиль.
Вот поток, повернутый json
{"id": 1, "email": "userEmail",}
Вот так я получаю свою сущность обратно:
//In my service
userRepository.findByEmail(email);
public interface IUserRepository extends JpaRepository<User,
Integer>{
User findByEmail(String email);
}