关于hibernate实体配置文件

这两天在做项目时,遇到了一些问题,虽然不难但是很让人纠结,通过同事的帮助还是把问题解决了,先记下再说:
  hibernate实体映射中:得有(实体类)和(实体-映射文件)。
  实体与表的映射关系中: 视图和表一样全可以直接与实体类一一对应,没什么太大的区别;
                        对于 视图来说,在**.hbm.xml文件中的id主键生成策略可以直接使用视图中某一字段当为主键(视图中没有主键列,可以直接把实体类中的某一字段当成主键在**.hbm.xml文件中配置)即:有主键配主键/无主键配字段;
                        对于 来说,假如表中没有主键字段的话,那么就需要使用到hibernate中的联合主键了,将所有的字段当成一个主键在**.hbm.xml文件中配置;
                       在**.hbm.xml配置文件中不管映射的表中是否有主键字段,在配置文件中必须要有主键生成策略,在项目服务启动后会自动检测配置文件是否有主键,假如没有主键的话就会报错
                    在两个关联表的对应的配置文件中,假如user表和unit表是有关联关系的,他们的关系时用户-单位(多对一关系);两个表的关联关系时::user表中有指向unit表主键的外键存在,假如 两者只有这种关系的话在配置文件中体现为: 只需要在user表配置文件中配置many-wo-one节点,不需要在unit表配置文件中配置set集合属性
                    user表的配置文件中的many-to-one节点的配置信息如下:
<many-to-one name="dw" class="com.egf.qingbao.bf.entities.TDw" lazy="false"  fetch="select">
<column name="DWDM">   -----------user表中对应的外键字段
<comment>单位</comment>
</column>
</many-to-one>
                    在user实体类中:单位的引用/private TDW dw(而不再需要外键字段对应的属性);

猜你喜欢

转载自liuzhiqiang19890403.iteye.com/blog/2051320