xDoclet在Hibernate中的使用
Hibernate類:
@hibernate.class
table="teacher"
Hibernate子類:
@hibernate.joined-subclass
@hibernate.joined-subclass-key
column="tea_id"
主鍵:
@hibernate.id
column="tea_id"
generator-class="native"
普通屬性:
@hibernate.property
column="tea_name"
1:n(1對多)
1的一頭:
@hibernate.set
lazy="true"
cascade="all"
inverse="true"
@hibernate.collection-keycolumn="tea_id"
@hibernate.collection-one-to-manyclass="tms.Teacher.ZBJiangCheng"
多的一頭:
@hibernate.many-to-one
column="tea_id"
class="tms.Teacher.ZBTeacher"
not-null="true"
1:1(1對1)
1的一頭:
@hibernate.one-to-one name="gongzi"
class="tms.Teacher.ZBGongzi"
cascade="all"
1的另一頭:
@hibernate.one-to-one
name="teacher"
class="tms.Teacher.ZBTeacher"
constrained="true"
并且其主鍵策略應是:
@hibernate.id
column="tea_id"
generator-class="foreign"
unsaved-value="0"
@hibernate.generator-param
name="property"
value="teacher"
另一種一頭維護的1:1關系
(例如:一本書對應一個圖書類型,一種圖書類型對應多本書,圖書類型一端不需維護對應什么書,而書的一端應維護對應哪種圖書類型)
@hibernate.many-to-one
name="booktype"
column="booktype_id"
cascade="all"
not-null="true"