Я создаю API, в котором у меня есть 3 таблицы: «Пользователь», «Книга» и «Статус».И я хочу создать комбинированную таблицу User_Book_Status.Я не уверен, как реализовать это в JPA.Я думаю, что все таблицы имеют отношение M: N друг к другу.Как мне объединить эти 3 таблицы?
Вот мой дизайн базы данных.
![https://i.imgur.com/33EBHeG.png](https://i.imgur.com/33EBHeG.png)
User.java
import javax.persistence.*;
@Entity
@Table(name = "users")
public class User {
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE)
private long id;
@Column(nullable = false)
private String username;
@Column(nullable = false)
private String password;
public User() {}
//Getters and setters omitted.
}
Book.java
import javax.persistence.*;
@Entity
@Table(name = "books")
public class Book {
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE)
private long id;
@Column(nullable = false)
private String title;
@Column(nullable = false)
private String author;
@Column(nullable = false)
private int pages;
public Book() {}
//Getters and setters omitted.
}
Status.java
import javax.persistence.*;
@Entity
public class Status {
public enum ReadingStatus {READING,
FINISHED,
ONHOLD}
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private long id;
@Enumerated(EnumType.STRING)
private ReadingStatus status;
}