看了很多案例,都表述的不是很清楚,所以自己写一个
1 先创建一个公共mapper的文件
xml文件,这里重点是namespace属性,需要一个dao,并且是能被spring扫描到的路径
<?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.dao.CommonDao">
<sql id="aaa">
<if test="你的字段 == '你的值' ">
你要选择的东西
</if>
<if test="你的字段 == '你的值' ">
你要选择的东西
</if>
</sql>
</mapper>
dao文件,什么都不用写,我是加了@Mapper注解,你可以使用MapperScan
package com.dao;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface CommonDao {
}
2 在需要引入的xml文件中这样写,refid一定要写全包名和sql标签的id名
<select id="selectById" parameterType="List" resultMap="aaaMap">
select *
from <include refid="com.dao.CommonDao.aaa"></include>
</select>
4 mapper.java里面这样写
import org.apache.ibatis.annotations.Param;
void selectById(@Param("aaa") String aaa);