OA项目总结2011-4-10组织机构处理

OA=office Automation 用户企业和政府的办公
组织机构分为职能型(机构管理机构),权力型(人管人)和混合型(前两者兼有)
    (1)简单职能型person  org(parent)
        (2)权力型person(parent)  org
        (3)混合型person org都继承一个party类,party(parent)
  hibernate部分
  1.对多一的双向关联配置
(1)hibernate属性:<many-to-one column="pid" name="parent"/>
   表示该列和做外键的时候是多对一的关系,一个机构上面职能有一个父机构
(2)   <set name="children" inverse="true" lazy="extra">
      <key column="pid"/>
      <one-to-many class="com.bjsxt.oa.model.Orgnization"/>
      </set>
      //一个机构可以有多个子机构,是一对多的关系
      inverse:表示把数据的维护交给被控方
      lazy:是否延迟加载
(3)one to one 意思是关系的任意一方确定了的情况下,另外一方就可以被确定,或者  说要么不存在,要么唯一。 例如在中国合法夫妻的关系就是一对一(这个比喻有点。。。)
many to one意思是从many这一方可以确定唯一的one方,例如父子关系,正常情况下儿子对父亲是many to one的 ,知道儿子则可以确定唯一的父亲如果一定要把性别建一个表的话,人和性别的关系的确就应该是many to one,你认为的一个人只有一个确定的性别,只能断定从另一方必然为one, 而同一个性别的人有...多个,所以确定性别的另外一边是many,最后组合他们的关系就为many to one。
many to many 关系数据库中两个表之间的一种关系, 该关系中第一个表中的一个行可以与第二个表中的一个或多个行相关。 第二个表中的一个行也可以与第一个表中的一个或多个行相关。要表示多对多关系,您必须创建第三个表,该表通常称为联接表,它将多对多关系划分为两个一对多关系。

猜你喜欢

转载自iwillbegenius.iteye.com/blog/996388
今日推荐