嗯,我有一个Feeding.java类和一个User.java类
一个提要应该有一个用户,但一个用户可以有多个提要。
这是我的Feeding.java类:
@Getter
@Setter
@EqualsAndHashCode
@NoArgsConstructor
@Entity
@Table(name = "tblFeeding")
public class Feeding {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Integer idFeeding;
private LocalDateTime dateFeeding;
private double amountFeeding;
private String foodFeeding;
@ManyToOne
@JoinColumn(name = "id_user")
private User user;
}这是我的User.java类:
@Entity
@Getter
@Setter
@Table(name = "tbl_User")
public class User implements UserDetails {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Integer idUser;
private String nameUser;
private String email;
private String passwordUser;现在的问题是,我可以用一个不存在的userId来保存供给对象,这应该是不可能的。
发布于 2021-04-26 18:34:04
缺少外部约束。如果您使用Hibernate ORM创建表,则不应该发生这种情况,但如果您以不同的方式创建表,则可能尚未创建外部约束。
您需要运行一个类似于下面这样的SQL查询:
ALTER TABLE Feeding
ADD CONSTRAINT id_user_fk
FOREIGN KEY (id_user) REFERENCES User;请注意,查询可能会有所不同,您需要检查数据库的确切查询。
此查询来自Hibernate ORM documentation example for many-to-one associations。
https://stackoverflow.com/questions/67264886
复制相似问题