http://www.oracle.com/technology/global/cn/products/ias/toplink/jpa/resources/toplink-jpa-annotations.html#OneToMany
http://www.oracle.com/technology/global/cn/pub/articles/gupta-jpa.html
http://www.cn-java.com/www1/?uid-553689-action-viewspace-itemid-4897
http://blog.csdn.net/cool_rain_man/archive/2008/08/25/2825617.aspx
http://blog.csdn.net/mrdangdong/archive/2008/10/10/3047574.aspx
====================================================================
以上是一些关于hibernate annotation的资料!
基本的就是运用
@OneToMany
@ManyToOne
---------------------------
多对一
@ManyToOne(
fetch=FetchType.LAZY)这儿如果要使用延迟加载,就必须显示标记,默认值为EAGER
@JoinColumn(name="数据库中的外键字段名")
这种关联也可以使用@JoinTable
引用
@JoinTable(name="Test_Tree_Forest",
joinColumns = @JoinColumn(name="tree_id"),
inverseJoinColumns = @JoinColumn(name="forest_id") )
一对多
@OneToMany(mappedBy="关联类的属性名",cascade=CascadeType.REMOVE)
mappedBy相当于过去的inverse="true".
fetch的默认值为LAZY可以不用明显设置.
引用
使用@OneToMany批注可定义一对多关联,一对多关联可以是双向关联。
在EJB3规范中多对一这端几乎总是双向关联中的主体(owner)端,而一对多这端关联批注为@OneToMany(mappedBy...)
引用
通过关联表处理单向关联:
通过联接表处理单向一对多关联是首选方式,这种关联通过@JoinTable批注进行描述
在一方不用设置@OneToMany就是单向的.
在设置这些annotation的时候,得在getter方法上设置,在属性上设置会出错...