对于Mybatis在C#.Net中个人使用的总结(一) Mybatis 的结果映射

时间:2022-05-29 10:58:49

(图片中的文字上传之后就都看不清,我再图片的下边会用斜体字标清)

首先我在项目中使用Mybatis 是用XML完成映射的。至于XML这门语言,其实很简单的(对于入门来说,因为我是刚入门~),如果你还不是很了解,可以去下载一本《无废话XML》*人写的,总体来说  内容很紧凑,非常适合入门。好接下来转入正题:

 

大致氛围这四个部分一般来说前两个部分写好之后就不会再改变了   后两个则根据具体的情况  增加

下边介绍结果映射部分

对于Mybatis在C#.Net中个人使用的总结(一) Mybatis 的结果映射

(图片中的文字,1 头部分用于表示xml的版本号以及其他各种属性的设置

2申明部分表示mybatis 的映射 所对应的实体

3结果映射查询的实体结果 是如何实现一一映射的

4声明语句 包括增删改查各种东东)

首先要用 sqlMap 的关键字包含住,其次   结果映射要放在 ResultMaps 中

一般我会把结果映射部分也就是此处的Cartonresult分为两部分一类是里边的值字段(包括字符串和数值)另外一部分是引用类型(也就是Carton中的  引用字段比如Company实体)对于前半部分我会使用Extends 直接关联映射(也可放在底下直接写映射语句可是没有这样的可读性强)对于后半部分采用的就是如图中的  使用关联字段  去对应的XML如(company)中寻找对应id (如 getobject)的查询语句进行查询。最后会将得到的company实体安装到  Carton这个实体的对应属性字段上 

对于Mybatis在C#.Net中个人使用的总结(一) Mybatis 的结果映射

(图片中的文字 1、外联映射部分

2、使用company sysNo  去company 的映射列表中 使用getobject 映射 获取到company 实体 最后赋值到Carton 的company字段上)

对于Mybatis在C#.Net中个人使用的总结(一) Mybatis 的结果映射

(图中文字,左边是 实体中的字段,右边是 数据库中的字段或 得到的数据源)

 

代码

 

<resultMapid="AbstractResult"class="Carton">

      <resultproperty="SysNo" column="SysNo" />

      <resultproperty="CustomerID" column="CustomerID"/>

      <resultproperty="CartonType" column="CartonType"/>

      <resultproperty="CartonCode" column="CartonCode"/>

      <resultproperty="RCUserName" column=    "RCUserName"/>

      <resultproperty="LoadUserName" column="LoadUserName"/>

      <resultproperty="LoadDateTime" column="LoadDateTime"/>

    </resultMap>

  

    <resultMapid="CartonResult" class="Carton" extends="AbstractResult">

      <resultproperty="CartonDetailList" column="SysNo" select="CartonDetail.GetByCartonSysNo"/>

      <resultproperty="Company" column="CompanySysNo" select="Company.GetObject"/>

      <resultproperty="Warehouse" column="WarehouseSysNo" select="Warehouse.GetObject"/>

    </resultMap>