我在我的@Entity class UpcomingOffer
有这样的:Hibernate为什么不抱怨'null'值必须是@NotNull?
@Entity
public class UpcomingOffer {
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name="ID")
private Long id;
@NotNull // Must not be null!
@OneToOne
private Store store;
// ...
}
,但由于某种原因,我能救一个StoreOffer
而无需Store
集:
UpcomingOffer upcomingOffer = new UpcomingOffer();
DateTime date = new DateTime(upcomingOfferDto.getDate());
upcomingOffer.setDate(date);
upcomingOffer.setStore(null);
保存它不会导致一个例外:
Session session = getSessionFactory().getCurrentSession();
session.saveOrUpdate(upcomingOffer);
这导致即将到来的报价的输入被更新并且不与相关联拥有那UpcomingOffer
。
为什么Hibernate在用@NotNull
注释时在这里抛出异常?
你使用的是什么版本的Hibernate?由于您直接使用hibernate API,我假设您没有使用JPA。 – greyfox
@greyfox我正在使用'4.3.0.Final'。 – displayname
这可能不是它,而是你的类路径上的hibernate-validator? – greyfox