mybatis在xml文件中配置sql

尽管mybatis能够在接口配置sql,但是有时候需要动态拼接sql,就需用到xml文件配置sql啦


这是我的一个简单配置文件:


<?xml version="1.0" encoding="UTF-8" ?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<mapper namespace="com.ming.dao.i.IuserDao">
	<!--配置一个resultMap 指定返回的类型 -->
	<!-- <resultMap id="userResult" type="User"> -->
	<!-- <id column="userId" property="userId" /> -->
	<!-- <result column="userName" property="userName" /> -->
	<!-- <result column="passWord" property="passWord" /> -->
	<!-- </resultMap> -->

	<select id="getUserById" parameterType="int" resultType="User">
		select *
		from user where userId=#{userId}
	</select>

	<select id="getUserByNameOrPass" parameterType="com.ming.pojo.User"
		resultType="User">
		<!-- 方法一 -->
		<!-- select * from user where 1=1 -->
		<!-- <if test="userName!=null and !"".equals(userName.trim())"> -->
		<!-- and userName like '%' #{userName} '%' -->
		<!-- </if> -->
		<!-- <if test="passWord!=null and !"".equals(passWord.trim())"> -->
		<!-- and passWord like '%' #{passWord} '%' -->
		<!-- </if> -->


		<!-- 方法二 -->
			<![CDATA[
				select * from user where 1=1
				<#if userName??>
				and userName like : userName
				</#if>
				<#if passWord??>
				and passWord like : passWord
				</#if>
			]]>
	</select>
	<delete id="deleteOneById" parameterType="int">
		delete from user where
		userId=#{userId}
	</delete>
	<select id="getUsersByPage" parameterType="com.ming.pojo.User"
		resultType="User">
		select * from user where 1=1
		<if test="userName!=null and !"".equals(userName.trim())">
			and userName like '%' #{userName} '%'
		</if>
		<if test="passWord!=null and !"".equals(passWord.trim())">
			and passWord like '%' #{passWord} '%'
		</if>
	</select>
</mapper>


方法二,我是在其他地方看到的   不是很明白,那是什么技术,希望知道的人告诉我,谢谢


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值