mybatis的动态SQL

本文介绍了一个使用MyBatis实现的多条件查询示例,通过XML配置文件中的`<if>`标签实现动态SQL,使得可以根据不同的参数组合进行数据库查询。此外,还展示了如何使用`<trim>`标签来自定义插入语句中列名和值的格式。
UserMapper.xml:


<!-- 1.测试多条件 -->
<select id="getUsers" resultMap="userMap">
select * from user
<where>
<if test="userName!=null">
and username = #{userName}
</if>
<if test="userAge!=0">
or userage = #{userAge}
</if>
</where>
</select>

<!-- 测试trim自定义格式 -->
<insert id="saveUser" parameterType="User">
insert into User
<!-- 自定义要添加的列格式 -->
<trim prefix="(" suffix=")" prefixOverrides=",">
<if test="id!=null">
id,
</if>
<if test="userName!=null">
username,
</if>
<if test="userAge!=0">
userage,
</if>
<if test="userAddress!=null">
useraddress
</if>
</trim>
<!-- 自定义要添加的列的值格式 -->
<trim prefix="values(" suffix=")" suffixOverrides=",">
<if test="id!=null">
#{id},
</if>
<if test="userName!=null">
#{userName},
</if>
<if test="userAge!=0">
#{userAge},
</if>
<if test="userAddress!=null">
#{userAddress}
</if>
</trim>
</insert>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值