Mybatis框架(四):Mybatis的映射文件详解

一、mybatis映射文件的结构

SQL 映射文件顶级元素(按照应被定义的顺序列出):

  • cache – 对给定命名空间的缓存配置。
  • cache-ref – 对其他命名空间缓存配置的引用。
  • resultMap – 是最复杂也是最强大的元素,用来描述如何从数据库结果集中来加载对象。
  • parameterMap – 已废弃!老式风格的参数映射。更好的办法是使用内联参数,此元素可能在将来被移除。
  • sql – 可被其他语句引用的可重用语句块。
  • insert – 映射插入语句
  • update – 映射更新语句
  • delete – 映射删除语句
  • select – 映射查询语句

二、cache(缓存)

    <!--开启user支持二级缓存-->
    <cache/>

三、resultMap(结果映射)

1、resultMap子元素的概念视图

  • constructor - 用于在实例化类时,注入结果到构造方法中
    • idArg - ID 参数;标记出作为 ID 的结果可以帮助提高整体性能
    • arg - 将被注入到构造方法的一个普通结果
  • id – 一个 ID 结果;标记出作为 ID 的结果可以帮助提高整体性能
  • result – 注入到字段或 JavaBean 属性的普通结果
  • association – 一个复杂类型的关联;许多结果将包装成这种类型
    • 嵌套结果映射 – 关联本身可以是一个 resultMap 元素,或者从别处引用一个
  • collection – 一个复杂类型的集合
    • 嵌套结果映射 – 集合本身可以是一个 resultMap 元素,或者从别处引用一个
  • discriminator – 使用结果值来决定使用哪个 resultMap
    • case – 基于某些值的结果映射
      • 嵌套结果映射 – case 本身可以是一个 resultMap 元素,因此可以具有相同的结构和元素,或者从别处引用一个

四、sql(SQL 代码段)

<!--抽取重复的sql语句-->
<sql id="findAllUser">
    select * from user
</sql>

<!--查询所有用户-->
<select id="findAll" resultType="com.wedu.mybatis05.domain.User">
    <include refid="findAllUser"></include>
</select>
发布了134 篇原创文章 · 获赞 10 · 访问量 7371

猜你喜欢

转载自blog.csdn.net/yu1755128147/article/details/103396028