• resultMap

    • constructor - 类在实例化时,用来注入结果到构造方法中

      • idArg - ID 参数;标记结果作为 ID 可以帮助提高整体效能
      • arg - 注入到构造方法的一个普通结果
    • id – 一个 ID 结果;标记结果作为 ID 可以帮助提高整体效能
    • result – 注入到字段或 JavaBean 属性的普通结果
    • association – 一个复杂的类型关联;许多结果将包成这种类型 
      嵌入结果映射 – 结果映射自身的关联,或者参考一个
    • collection – 复杂类型的集 
      嵌入结果映射 – 结果映射自身的集,或者参考一个
    • discriminator – 使用结果值来决定使用哪个结果映射 
      • case – 基于某些值的结果映射 
        嵌入结果映射 – 这种情形结果也映射它本身,因此可以包含很多相 同的元素,或者它可以参照一个外部的结果映射。

constructor标签

<constructor>
<!-- 这里的int对应实体类构造方法参数的 Integer -->
<idArg column="id" javaType="int"/>
<arg column="username" javaType="String"/>
</constructor>
//对应的构造方法
public POJO(Integer id,String username){
...
}

它将结果集映射到构造方法上,它根据参数的类型和顺序来确定构造方法。构造方法注入允许你在初始化时 为类设置属性的值,而不用暴露出公有方法。

discriminator标签

 <resultMap id="carDiscriminator" type="Car" >
<!-- javaType 是需要被用来保证等价测试的合适类型,column指定需要鉴别的列,case可以指定结果集 -->
<discriminator javaType="int" column="age">
<case value="1" resultMap="car"/>
<case value="2" resultType="car">
<id property="id" column="id"/>
<result property="name" column="name"/>
<result property="money" column="money"/>
<result property="age" column="age"/>
<result property="uId" column="uId"/>
<association property="user" resultMap="me.dao.UserDao.User" columnPrefix="u_"/>
</case>
</discriminator>

association标签

   <resultMap type="Car" id="carWithUser" extends="car">
<!-- columnPrefixw为resultMap的每个column添加前缀 -->
<association property="user" resultMap="me.dao.UserDao.User" columnPrefix="u_"/>
<!-- select指定嵌套的查询的Id,column指定根据哪列来嵌套查询 -->
<association property="car" column="id" select="getCar" />
</resultMap>

collection标签

  <resultMap type="User" id="UserWithCarAndDog">
<id property="id" column="id"/>
<result property="name" column="name"/>
<result property="age" column="age"/>
<!-- select指定嵌套的查询的Id,column指定根据哪列来嵌套查询 -->
<collection property="dogs" column="id" select="selectDogsWithUid"/>
<!-- columnPrefixw为resultMap的每个column添加前缀 -->
<collection property="dogs" ofType="Dog" resultMap="dog" columnPrefix="dog_"/>
</resultMap>

最新文章

  1. 巧用javascript对象属性,向事件绑定的匿名函数内传递循环控制变量的值
  2. 关于.NET知识体系结构图总结
  3. salesforce 零基础学习(二十一)workflow Q&amp;A
  4. WebClient 使用
  5. Linux 命令集合
  6. DDL、DML、DCL的理解
  7. android 中 webview 怎么用 localStorage?
  8. Makefile 自动化变量
  9. [Objective-C]__bridge,__bridge_retained和__bridge_transfer的意思,区别与使用
  10. js函数延迟执行
  11. 【Quick 3.3】资源脚本加密及热更新(三)热更新模块
  12. SqlServer之like、charindex、patindex(转载)
  13. C++ 自定义结构体和类 内存对齐
  14. Android音频焦点详解(上)
  15. Maven 本地仓库明明有jar包,pom文件还是报错解决办法
  16. Jmeter接口测试实例
  17. Oracle数据库中OVER()函数的了解
  18. zookeeper的原理,5分钟了解zookeeper
  19. 一文看懂显示关键材料之彩色滤光片(Color Filter)
  20. 手动获取被spring管理的bean对象工具

热门文章

  1. loj2587 「APIO2018」铁人两项[圆方树+树形DP]
  2. C语言例题
  3. awk的妙用
  4. 洛谷-P3808-AC自动机(模板)
  5. excel操作之poi-ooxml
  6. Maven 配置问题 - could not find resource mybatis-config.xml
  7. springboot 集成swagger2.x 后静态资源报404
  8. Luogu P4198 楼房重建 分块 or 线段树
  9. Qt5.11.2 VS2015编译activemq发送程序 _ITERATOR_DEBUG_LEVEL错误和崩溃解决
  10. Ubuntu 16.04 一键安装P4开发环境记录