#java #spring #jpa #spring-data-jpa #spring-jdbc
Вопрос:
Я использую Spring Boot с Spring Data JPA. У меня есть две таблицы с именами Пользователь и сотрудник.
Employee.java
@Data
@NoArgsConstructor
public class Employee implements Serializable
{
private static final long serialVersionUID = -3732596549369515261L;
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
private String name;
private String designation;
private Date dateOfJoining;
private String workLocation;
@Column(unique = true)
private Long contactNo;
@Column(unique = true)
private String email;
private Date dateOfLeaving;
}
User.java
@Entity
@Data
@NoArgsConstructor
public class User
{
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
private String username;
private String password;
}
Я хочу создать связь между Employee.email и User.username. Будет ли это возможно с помощью любых аннотаций JPA.
Я пробовал использовать сопоставления из JPA, и ни одно из них не работает как пользователь.имя пользователя-строка, в отличие от объекта Employee.
Комментарии:
1. Какого рода отношения? Также поделитесь тем, что вы пробовали до сих пор.
2. Значение имени пользователя в таблице Пользователей должно быть записью столбца электронной почты таблицы сотрудников. Попробовал объединить столбец с отображением OneToOne, но тип, который нам нужно упомянуть, — это только ссылка на объект(сотрудник), в отличие от строки, которую я на самом деле ищу.