MyBatis动态查询

本文详细介绍了MyBatis的动态查询,包括resultMap类型标签的使用,以及<sql>, <if>, <where>, <foreach>, <set>, <trim>和<choose><when>等动态查询映射标签的原理和应用场景。讲解了如何处理多条件查询、in集合查询、动态修改和动态添加等问题,帮助理解MyBatis动态SQL的灵活性。" 50899882,5549669,VS2010配置OpenGL扩展库glut、freeglut、glew及gltools教程,"['OpenGL开发', 'VS2010', '库配置', '软件开发', '图形编程']
摘要由CSDN通过智能技术生成

MyBatis动态查询

resultMap类型标签

查询的别名:

(例如:数据库表中列名带有下划线,但是实体类一般是驼峰式命名,因此可以通过在映射文件中起别名解决。)

主要针对数据表中的字段和实体类中的属性名称不一致,通过在SQL中的as 别名方式,将表中的查询的结课记录的字段名,重新命名为实体类中的属性名。

    <select id="findAll" resultType="user">
            select userid , acctName as loginName  , password , name  from  user
    </select>

在 select 标签中使用 resultMap 简单来说是自定义的,要先定义类型。同时 resultMap 可以实现将查询结果映射为复杂类型的 pojo,比如在查询结果映射对象中包括 pojo 和 list 实现一对一查询和一对多查询。

<resultMap id="result" type="user">
        <id column="userId" property="userId"/>
        <result column="acctName" property="loginName"/>
        <result column="password" property="password"/>
        <result column="name" property="name"/>
        <result column="job" property="jobName"/>
    </resultMap>

id 标签:不可重复,用于指定主键字段result 标签

column 属性:用于指定数据库中表的列名

property 属性:用于指定实体类属性名

  • 配置映射
<!-- 配置查询所有操作 -->
<select id="findAll" resultMap="result">
    select * from user
</select>

resultMap=“result”,result就是上面自定义resultMap的id名

MyBatis动态查询映射标签

  • ​ 1.< sql>
  • ​ 2.< if>
  • ​ 3.< where>
  • ​ 4.< foreach>
  • ​ 5.< set>
  • 6.< trim>
  • 7.< choose>< when>
1.< sql>标签:
	<!--  SQL语句的重用 -->

 <sql id="baselist">
        select userid,acctName,name,password,job
 </sql>

<select id="findAll" resultMap="result">
    <include refid="baselist">
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值