У меня проблема с поиском решения для спецификаций пружин со списком объектов и связью @ManyToMany. У меня есть класс сотрудников, у которого есть список навыков:
@Entity
public class EmployeeEntity {
@ManyToMany
@JoinTable(name = "employee_skill",
joinColumns = {@JoinColumn(name = "employee_id")},
inverseJoinColumns = {@JoinColumn(name = "skill_id")})
private List<SkillEntity> skills;
}
public class SkillEntity {
@Column(name = "skill_name")
private String skillName;
}
Я хочу найти сотрудников, которые имеют навыки, которые хранятся в моем списке пользовательских навыков:
public static Specification<EmployeeEntity> employeeHasSkills(List<String> skills) {
return (root, query, cb) ->{
return root.get("skills").get("skillName").in(skills);
};
}
Список навыков имеет skillNames как String. Поэтому я пытаюсь отобразить навыки для skillName. Из c это не работает. Есть идеи? Я ищу решение без метамодели JPA.