使用JPA/Hibernate连接springboot中的表时出现问题

使用JPA/Hibernate连接springboot中的表时出现问题,hibernate,spring-boot,jpa,controller,Hibernate,Spring Boot,Jpa,Controller,我可能还有很多东西要学,但我已经在网上丢了很多例子,但运气不好。我只想创建一个@jointable 我的模特是 @Entity @Table(name="UserLogin") public class User { @Id @Column(name="UserID") private long userID; @Column(name="email", nullable = false, unique=true) private String usern

我可能还有很多东西要学,但我已经在网上丢了很多例子,但运气不好。我只想创建一个@jointable

我的模特是

@Entity
@Table(name="UserLogin")
public class User {
    @Id
    @Column(name="UserID")
    private long userID;
    @Column(name="email", nullable = false, unique=true)
    private String username;
    @Column(name = "password")
    private String password;



@Entity
@Table(name = "Menu")
public class Menu {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "ItemID")
    private long itemID;
    @Column(name = "Item_Name")
    private String item_Name;
    @Column(name = "Item_Price")
    private float item_Price;
    @Column(name = "Item_Points")
    private int item_Points;
    @Column(name = "Item_Calories")
    private int item_Calories;
    @Column(name = "Item_Discount")
    private float item_Discount;

我已经在控制器中为菜单实体创建了CRUD函数,但希望创建一个添加按钮,以便客户可以将项目存储在该表的帐户中

create table UserOrder(
EmployeeID INT not null,
ItemID int not null,
FOREIGN KEY (EmployeeID) REFERENCES UserLogin(EmployeeID),
FOREIGN KEY (ItemID) REFERENCES Menu(ItemID)
)
如何为“添加”按钮创建控制器?或者我只是在存储库中编写自己的查询?
感谢任何人的帮助,我也可以链接到project。

当您这样做时,这被称为带有联接表的一对多映射,所以您不需要在db中手动创建表

详情如下:

@Table(name = "UserLogin")
@Entity
public class User {
.
.
.
@OneToMany(cascade=CascadeType.ALL)
@JoinTable(name="USER_ORDER", joinColumns={@JoinColumn(name="userId", referencedColumnName="userId")}
, inverseJoinColumns={@JoinColumn(name="ItemID", referencedColumnName="ItemID")})
private Set<Menu> items;

}

@Entity
@Table(name = "Menu")
public class Menu {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "ItemID")
private long itemID;
......  
.....


}
@Table(name=“UserLogin”)
@实体
公共类用户{
.
.
.
@OneToMany(级联=级联类型.ALL)
@JoinTable(name=“USER\u ORDER”,joinColumns={@JoinColumn(name=“userId”,referencedColumnName=“userId”)}
,inverseJoinColumns={@JoinColumn(name=“ItemID”,referencedColumnName=“ItemID”)})
私人设置项目;
}
@实体
@表(name=“菜单”)
公共类菜单{
@身份证
@GeneratedValue(策略=GenerationType.IDENTITY)
@列(name=“ItemID”)
私有长项目ID;
......  
.....
}
参考: