hibernate常用关联
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
<class name="Contract.Domain.Teacher,CCRModel" table="TEACHER">
<id name="Id" type="int" column="Id" >
<generator class="native" />
</id>
<property name="TName" column="T_NAME" />
<bag name="Students" cascade="all">
<key column="TEACHER_ID" not-null="true"/>
<one-to-many class="Contract.Domain.Student"/>
</bag>
</class> </hibernate-mapping> <?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
<class name="Contract.Domain.Student,CCRModel" table="STUDENT">
<id name="Id" type="int" column="Id" >
<generator class="native" />
</id>
<property name="SName" column="S_NAME" /> <many-to-one name="Teacher" class="Contract.Domain.Teacher" column="TEACHER_ID" not-null="true"/>
</class> </hibernate-mapping> var session1 = Dao.GetSession(); Teacher t = new Teacher() { TName = "laoshi" }; Student s1 = new Student() { SName = "t1" }; Student s2 = new Student() { SName = "t2" }; t.Students = new List<Student>();
t.Students.Add(s1);
t.Students.Add(s2); s1.Teacher = t;
s2.Teacher = t; session1.SaveOrUpdate(t); session1.Flush(); var gt=session1.Get<Teacher>(); var stu = session1.Get<Student>(); return; 多对多 关系拆分 分为1和2和3三个步骤,其中BasIssuer和BasCreditRating两个都是一端各自拥有一个1对多的关系,而中间实体是多端配置有两个多对一的关系
.
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
<class name="Contract.Domain.BasIssuer,BASModel" table="BAS_ISSUER">
<id name="Id" column="ISSUER_ID" unsaved-value="null">
<generator class="sequence" >
<param name="sequence">BAS_MODULE_SEQ</param>
</generator>
</id>
<property name="IssuerCode" column="ISSUER_CODE" />
<property name="IssuerName" column="ISSUER_NAME" />
<!--<property name="Region" column="REGION_ID" />-->
<property name="CreateUid" column="CREATE_UID" />
<property name="CreateUname" column="CREATE_UNAME" />
<property name="CreateOid" column="CREATE_OID" />
<property name="CreatePid" column="CREATE_PID" />
<property name="CreateDate" column="CREATE_DATE" />
<property name="LastModUid" column="LAST_MOD_UID" />
<property name="LastModUname" column="LAST_MOD_UNAME" />
<property name="LastModOid" column="LAST_MOD_OID" />
<property name="LastModPid" column="LAST_MOD_PID" />
<property name="LastModDatetime" column="LAST_MOD_DATETIME" />
<property name="Status" column="STATUS" />
<property name="IsDeleted" column="IS_DELETED"/>
<!--<property name="CreditRate" column="CREDIT_RATE" />-->
<!--<property name="CreditAgencyId" column="CREDIT_AGENCY_ID" />-->
<property name="IssuerType" column="ISSUER_TYPE" />
<!--<property name="IndustrySectorId" column="INDUSTRY_SECTOR_ID" />-->
<property name="CreatedEmployeeName" column="CREATED_EMPLOYEE_NAME" update="false"/>
<property name="CreatedEmployeeId" column="CREATED_EMPLOYEE_ID" update="false"/> <many-to-one name="Region" class="Contract.Domain.BasRegion" column="REGION_ID"/>
<many-to-one name="IndustrySector" class="Contract.Domain.BasSectorInfo" column="INDUSTRY_SECTOR_ID"/> <bag name="IssuerRating" cascade="all">
<key column="E_ID" />
<one-to-many class="Contract.Domain.RealCreditEntity,BASModel" />
</bag>
</class>
</hibernate-mapping>
.
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
<class name="Contract.Domain.BasCreditRating,BasModel" table="BAS_CREDIT_RATING">
<id name="Id" type="string" column="Id" unsaved-value="null">
<generator class="sequence" >
<param name="sequence">BAS_MODULE_SEQ</param>
</generator>
</id>
<property name="CreditRatingCode" >
<column name="CREDIT_RATING_CODE">
<comment>
信用评级编码
</comment>
</column>
</property>
<property name="CreditRatingName" >
<column name="CREDIT_RATING_NAME">
<comment>
信用评级名称
</comment>
</column>
</property>
<property name="RatingTypeLookupId" >
<column name="RATING_TYPE_LOOKUP_ID">
<comment>
评级类型ID
</comment>
</column>
</property>
<!--<property name="CreditRatingAgencyId" >
<column name="CREDIT_RATING_AGENCY_ID">
<comment>
评级机构ID
</comment>
</column>
</property>-->
<property name="CreditRatingValue" >
<column name="CREDIT_RATING_VALUE">
<comment>
评级分数
</comment>
</column>
</property>
<property name="Remarks" >
<column name="REMARKS">
<comment>
备注
</comment>
</column>
</property>
<property name="CreatedBy" >
<column name="CREATED_BY">
<comment>
创建人
</comment>
</column>
</property> <property name="CreateDate" update="false">
<column name="CREATE_DATE">
<comment>
创建日期
</comment>
</column>
</property>
<property name="UpdatedBy" >
<column name="UPDATED_BY">
<comment>
更新人
</comment>
</column>
</property>
<property name="UpdateDate" >
<column name="UPDATE_DATE">
<comment>
更新日期
</comment>
</column>
</property> <property name="CreatedEmployeeName" update="false">
<column name="CREATED_EMPLOYEE_NAME">
<comment>
created_employee_name
</comment>
</column>
</property> <property name="CreatedEmployeeId" update="false">
<column name="CREATED_EMPLOYEE_ID">
<comment>
created_employee_id
</comment>
</column>
</property>
<property name="Version" >
<column name="VERSION">
<comment>
评级版本
</comment>
</column>
</property>
<property name="IsDeleted" >
<column name="IS_DELETED">
<comment>
假删除标记
</comment>
</column>
</property>
<bag name="RatingIssuer" >
<key column="C_ID" />
<one-to-many class="Contract.Domain.RealCreditEntity,BASModel" />
</bag>
<many-to-one name="CreditRatingAgency" class="Contract.Domain.BasCreditRatingAgency" column="CREDIT_RATING_AGENCY_ID"/> </class>
</hibernate-mapping>
.
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
<class name="Contract.Domain.RealCreditEntity,BASModel" table="RELA_CREDIT_ENTITY">
<id name="Id" column="ID" unsaved-value="null">
<generator class="sequence" >
<param name="sequence">BAS_MODULE_SEQ</param>
</generator>
</id>
<property name="RatingDate" column="RATING_DATE" />
<many-to-one name="Issuer" class="Contract.Domain.BasIssuer" column="E_ID"/>
<many-to-one name="Rating" class="Contract.Domain.BasCreditRating" column="C_ID"/>
</class>
</hibernate-mapping>
hibernate常用关联的更多相关文章
- Hibernate常用接口
Hibernate的接口类型 在了解了Hibernate的基本配置,映射文件后,道路已经铺平了.我们继续往前走.接下来,我们应该做的是了解Hibernate常用的接口,对Hibernate的工作方式进 ...
- Hibernate常用查询语句
Hibernate常用查询语句 Hib的检索方式1'导航对象图检索方式.通过已经加载的对象,调用.iterator()方法可以得到order对象如果是首次执行此方法,Hib会从数据库加载关联的orde ...
- java:Hibernate框架1(环境搭建,Hibernate.cfg.xml中属性含义,Hibernate常用API对象,HibernteUitl,对象生命周期图,数据对象的三种状态,增删查改)
1.环境搭建: 三个准备+7个步骤 准备1:新建项目并添加hibernate依赖的jar文件 准备2:在classpath下(src目录下)新建hibernate的配置文件:hibernate.cf ...
- Hibernate注解----关联映射注解以及课程总结详解----图片版本
上一篇,记录了Hibernate注解----类级别注解以及属性注解详解 ,我们这一节主要讲解的是Hibernate注解----关联映射注解以及课程总结详解. 本节的主要内容: 第3章 关联映射注解 3 ...
- Hibernate的关联映射——双向1-N关联
Hibernate的关联映射--双向1-N关联 对于1-N的关联,Hibernate推荐使用双向关联,而且不要让1的一端控制关联关系,而是用N的一端控制关联关系.双线的1-N关联和N-1关联是两种相同 ...
- Hibernate的关联映射——单向1-N关联
Hibernate的关联映射--单向1-N关联 单向1-N关联的持久化类里需要使用集合属性.因为1的一端需要访问N的一端,而N的一端将以集合(Set)形式表现.从这个意义上来看,1-N(实际上还包括N ...
- Hibernate的关联映射——单向1-1关联
Hibernate的关联映射--单向1-1关联 对于单向的1-1关联关系,需要在持久化类里增加代表关联实体的成员变量,并为该成员变量添加setter方法和getter方法.从持久化类的代码上看,单向1 ...
- Hibernate的关联映射——单向N-1关联
Hibernate的关联映射--单向N-1关联 N-1是非常常见的关联关系,最常见的父子关系也是N-1关联,单向的N-1关联只需从N的一端可以访问1的一端. 为了让两个持久化类能够支持这种关联映射,程 ...
- Hibernate之关联映射(一对多和多对一映射,多对多映射)
~~~接着之前的Hibernate框架接着学习(上篇面试过后发现真的需要学习以下框架了,不然又被忽悠让去培训.)~~~ 1:Hibernate的关联映射,存在一对多和多对一映射,多对多映射: 1.1: ...
随机推荐
- js的原型模式
以下内容来自<JavaScript高级程序设计>第三版 我们创建的每个函数都有一个prototype(原型)属性,这个属性是一个指针,指向一个对象,而这个对象的用途是包含可以由特定类型的所 ...
- win10 自动亮度关闭无效问题
升级win10后,发现系统的关闭自动亮度功能无效了,怎么调整都没有效果,百度把,服务也关了,电源管理也关了,自己的显卡节电设置也关了,最后摸索,只要把电池状态下,和通电状态下的屏幕亮度都调整到50%以 ...
- 怎样去除SVN中的某个版本之前的所有版本
地狱门神 在某些时候,我们可能需要一个存放二进制文件的SVN库,用来保存每日构建的结果等.但是这种库会趋于越来越大,最后会占用很多磁盘空间.这时我们会想到能不能删掉某个版本之前的所有版本,以节省磁盘空 ...
- Django web 进阶
.路由系统 .模板引擎 simple_tag .Form .Ajax请求 -简单数据 -复杂数据 内容: -作业 model xss.csrf(安全方面的内容) 分页(公共的模块) 内容复习和今日内容 ...
- HDOJ(2056)&HDOJ(1086)
Rectangles HDOJ(2056) http://acm.hdu.edu.cn/showproblem.php?pid=2056 题目描述:给2条线段,分别构成2个矩形,求2个矩形相交面 ...
- JAVA类图
类与类图 类(Class)封装了数据和行为,是面向对象的重要组成部分,它是具有相同属性.操作.关系的对象集合的总称. 在系统中,每个类具有一定的职责,职责指的是类所担任的任务,即类要完成什么样的功能, ...
- nagios二次开发(六)---nagiosql原理及主要文件的介绍
nagiosql的入口文件:index.php,这也是所有php程序的入口文件.是由apache指定的. index.php 文件的开始引入了 require("functions/prep ...
- ORM即 对象-关系映射(转自:微冷的雨)
ORM即 对象-关系映射: 将数据库中的数据关系表,映射为实体对象. 灵动思绪EF(Entity FrameWork) 作者: 微冷的雨 来源: 博客园 发布时间: 2013-01-22 16:2 ...
- 掷骰子-IOS新手项目练习(抱歉,由于个人原因,图片没显示,要源码的项目私聊)
---恢复内容开始--- 今天我们来讲的就是项目<掷骰子> 首先我们先下载资源包,也就是我们需要的图片[点击图片下载] 在我们下载完图片之后,我们就可以开始创建项目 一.我们项目的做法可以 ...
- js 中闭包的概念