Java Hibernate更新问题

Java Hibernate更新问题,java,sql,hibernate,Java,Sql,Hibernate,我的程序中有一种奇怪的休眠行为。 我有两门课,一门关系:好课和价格课: @Entity @Table(name="GOODS") public class Good { .... @OneToMany(cascade=CascadeType.ALL, fetch=FetchType.EAGER) @JoinColumn(name="GOOD_ID") private Set<Price> prices = new HashSe

我的程序中有一种奇怪的休眠行为。 我有两门课,一门关系:好课和价格课:

    @Entity
    @Table(name="GOODS")
    public class Good {

    ....
    @OneToMany(cascade=CascadeType.ALL, fetch=FetchType.EAGER)
    @JoinColumn(name="GOOD_ID")
    private Set<Price> prices = new HashSet<Price>();
    ...}



    @Entity
    @Table(name="PRICES")
    public class AuctionPrice {

    ..

    @Column(name="PRICE")
    private double price;
    ...}
当价格没有实际变化时,适用于所有价格

为什么hibernate将此字段设置为null,并且在它将其还原后,是否可以避免此情况?

如果GOOD\u ID不能为null(我假设为null),则您应该这样声明:

@JoinColumn(name="GOOD_ID", nullable = false)
@JoinColumn(name="GOOD_ID", nullable = false)