码迷,mamicode.com
首页 > 数据库 > 详细

MyBatis SQL映射文件

时间:2019-08-22 21:56:23      阅读:139      评论:0      收藏:0      [点我收藏+]

标签:insert   元素   删除   查询条件   names   sql语句   描述   字段名   文件   

   SQL映射文件的几个顶级元素:

          mapper : 映射文件的根元素节点 只有一个属性namespace(命名空间)

          作用:用于区分不同的mapper ,全局唯一

          绑定DAO接口,即面向接口编程 ,namespace的命名必须要跟接口同名。

          cache:  配置给定命名空间的缓存

          cache-ref: 从其他命名空间引用缓存配置

          resultMap: 用来描述数据库结果集和对象的对应关系。

          sql : 可以重用的SQL块,也可以被其他语句引用。

          insert: 映射插入语句。

          update : 映射更新语句

          delete:  映射删除语句

          select: 映射查询语句

          namespace的命名必须跟某个DAO接口同名,同属于DAO层 包下,习惯命名以 实体类+Mapper.xml命名。    

         接口中的方法名与映射文件中的SQL语句id应一一对应

 使用select完成 单条件模糊查询

      <select  id="getUserListByUserName"  resultType="User"  parameterType="string">

              select  *   from   smbms_user   where  userName  like  CONCAT (‘%‘,#{userName},‘%‘)

      <select>

    id为 getUserListByUserName 的映射语句,参数类型为 string 返回结果类型是User;            数据库的字段名和属性名不一致的情况下需要手动映射

    id: 命名空间中唯一的标识符,可以被用来引用这条语句。

   parameterType: 表示查询语句传入参数的类型的完全限定名或别名。

MyBatis多参数入参有三种方式:

       1.将查询条件封装成对象进行入参    parameterType="User 类对象"

       2. 使用Map集合 存储查询条件         parameterType="Map" 返回集合

       3. 使用@Param注解实现多参数入参

使用resultMap完成查询结果的展现

     resultType 直接表示返回类型,包括基础数据类型和复杂数据类型。

      resultMap 是对外部resultMap定义的引用,对应外部resultMap的id,表示返回结果映射到哪一个resultMap上,应用场景一般是:数据库字段信息与对象属性不一致或者需要做复杂的联合查询以便自由控制映射结果。

 

MyBatis SQL映射文件

标签:insert   元素   删除   查询条件   names   sql语句   描述   字段名   文件   

原文地址:https://www.cnblogs.com/LxOwz/p/11396984.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!