Spring JPA: как вставить данные для объединения многих таблиц с отношением @ManytoMany - PullRequest
0 голосов
/ 25 июня 2018

Я начинаю изучать Spring Java Framework.Я создал Enity, чтобы присоединиться к 2 Model, как моя база данных.И теперь я хочу вставить в таблицу соединений JpaRepository.Что мне нужно сделать?Это мой код (пожалуйста, помогите мне, если что-то не так)

Модель Users_RoomId для определения составного первичного ключа

@Embeddable
public class Users_RoomId implements Serializable {
private static final long serialVersionUID = 1L;
@Column(name = "ID_room", nullable = false)
private String idRoom;
 @Column(name = "user_id", nullable = false)
 private int idUser;

}

Модель Users_Room для присоединения 2 пользователей модели и комнаты

@Entity
@Table(name ="bookroom")
public class Users_Room {
 @EmbeddedId
 private Users_RoomId usersroomId;

 @ManyToOne
 @MapsId("idRoom")
 private Room room;

 @ManyToOne
 @MapsId("idUser")
 private Users users;

 @Column(name = "Bookday")
 private String bookday;

Пользователи модели и комнаты Я использовал аннотацию @ OneToMany

Пользователи модели

@Entity
@Table(name = "users")
public class Users  implements Serializable{
 private static final long serialVersionUID = 1L;
 @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "user_id", nullable = false)
    private int id;


    @Column(name = "name", nullable = false)
    private String name;


    @Column(name = "email")
    private String email;

    @Column(name = "pass")
    private String pass;

    @Column(name = "role")
    private int role;

    @OneToMany(mappedBy = "users")
    private List<Users_Room> user;

Модельный номер

@Entity
@Table(name ="room")
public class Room implements Serializable {
 private static final long serialVersionUID = 1L;
 @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "ID_room", nullable = false)
    private String id;


    @Column(name = "name_room", nullable = false)
    private String name;


    @Column(name = "Description")
    private String describe;

    @ManyToOne
    @JoinColumn(name = "ID_status")
    private Status status;

    @Column(name = "room_image")
    private String image;


    public Room() {
        super();
    }

    @ManyToOne
    @JoinColumn(name = "ID_kind")
    private KindRoom kind;


    @OneToMany(mappedBy = "room")
    private List<Users_Room> rooms;

Это моя база данных

enter image description here

Так что я не знаю, какВставьте новую книгу с iduser, idroom и bookday с репозиторием JPA. Необходимо написать Query в JPARepository или нам просто нужно использовать метод save () для вставки данных

Спасибо всем

...