Hibernate 几个常用的注解

做对象关联时,几个常用的属性配置,和含义:

cascade:

>>CascadeType.REFRESH:级联刷新,当多个用户同时作操作一个实体,为了用户取到的数据是实时的,在用实体中的数据之前就可以调用一下refresh()方法!

>>CascadeType.REMOVE:级联删除,当调用remove()方法删除实体时会先级联删除的相关数据!

>>CascadeType.MERGE:级联更新,当调用了Merge()方法,如果数据改变了会相应的更新子表中的数据,

>>CascadeType.ALL:包含以上所有级联属性。

>>CascadeType.PERSIST:级联保存,当调用了Persist() 方法,会级联保存相应的数据


optional:
>>optional=true表示该对象(Order)是可选的,对象可以不存在  
>>值为false表示不可选即该对象必须存在,则在数据库中的外键就不能为null) 

fetch:
FetchType.LAZY:延迟加载
FetchType.EAGER:急加载

@ManyToOne Default: FetchType.EAGER   默认是即时抓取   做连接 如果,fetch=FetchType.LAZY不是左联接 在需要One的时候直接select

@OneToMany Default: FetchType.LAZY   默认是延迟抓取   不需要左联接 如果是FetchType.EAGER     即时抓取 就会是左联接查询

猜你喜欢

转载自nycas.iteye.com/blog/1526697
今日推荐