嗯,我有课 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保存feeding对象,这应该是不可能的。
1条答案
按热度按时间zsbz8rwp1#
缺少外部约束。如果您使用hibernate orm创建了表,则不应该这样做,但是如果您以不同的方式创建了表,则可能没有创建外部约束。
您需要运行类似于以下内容的sql查询:
请注意,查询可能不同,您需要检查数据库的确切查询。
此查询来自hibernate orm文档示例,用于多对一关联。