Я использую JPA с менеджером сохранения в спящем режиме.
У меня есть два класса, LibraryLoanSystem.java и User.java .
LibraryLoanSystem.java
@Entity
public class LibraryLoanSystem {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer idOfLLS;
@Transient
private ArrayList<Loan> loans = new ArrayList<Loan>();
@Transient
private ArrayList<Loanable> loanables = new ArrayList<Loanable>();
@OneToMany
@JoinTable(name = "USER" , joinColumns = @JoinColumn(name = "studentId"))
private ArrayList<User> users = new ArrayList<User>();
@Transient
private ObservableList<Material> materialData = FXCollections.observableArrayList();
public LibraryLoanSystem() {
populateUsers();
populateMaterials();
} //getters,setters and methods
User.java
@Entity
@Table(name = "User")
public class User {
/* Name of the User */
@Column(name = "name", nullable = false)
private String name;
/* Date of Birth for the User */
@Column(name = "dateOfBirth",nullable = false)
private LocalDate dateOfBirth;
/* Student ID of the User */
@Id
@Column(name = "studentId", updatable = false, nullable = false)
private String studentId;
//constructor,getters & setters
В основном, пользователи ArrayList в libraryloansystem - этосписок всех пользователей в системе, ака.все записи пользователя в строках таблицы пользователя.Эти два java-класса имеют взаимосвязь агрегации между ними, одна из которых с библиотечной системой, в которой есть несколько пользователей, но пользователь имеет только одну систему.Я не уверен, как сопоставить их, и я получаю
Незаконная попытка сопоставить не коллекцию как @OneToMany, @ManyToMany или @CollectionOfElements: controller.LibraryLoanSystem.users
На моих попытках.Как я могу правильно сопоставить этот список? Спасибо