设置MyBaits中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.wangYuan.mapper.EmpMapper">
<select id="queryByDeptno" parameterType="int" resultType="Emp">
select * from emp where deptno=#{deptno}
</select>
<select id="queryByName" parameterType="String" resultType="Emp">
select * from emp where ename=#{ename}
</select>
<select id="queryByDate" parameterType="Date" resultType="Emp">
select * from emp where hiredate=#{date}
</select>
<select id="queryByEnameDeptno" parameterType="emp" resultType="Emp">
select * from emp where ename=#{ename} or deptno=#{deptno}
</select>
<select id="queryByIdAll" resultType="Emp">
select * from emp where empno in (
<foreach collection="array" item="item" separator=",">
#{item}
</foreach>
)
</select>
<select id="queryBySalDeptno" resultType="emp" parameterType="map">
select * from emp where sal>#{sal} or deptno=#{deptno}
</select>
</mapper>
java代码测试
public class test03 {
public static void main(String[] args) throws ParseException {
SqlSession sqlSession = sessionUtils.getSqlSession();
List<Emp> list = sqlSession.selectList("com.wangYuan.mapper.EmpMapper.queryByDeptno", 20);
list = sqlSession.selectList("com.wangYuan.mapper.EmpMapper.queryByName", "wang");
Date parse = new SimpleDateFormat("yyyy/MM/dd").parse("1981/12/3");
list = sqlSession.selectList("com.wangYuan.mapper.EmpMapper.queryByDate", parse);
Emp emp = new Emp();
emp.setEname("ALLEN");
emp.setDeptno(20);
list = sqlSession.selectList("com.wangYuan.mapper.EmpMapper.queryByEnameDeptno", emp);
list = sqlSession.selectList("com.wangYuan.mapper.EmpMapper.queryByIdAll", new int[]{6666,7369});
list = sqlSession.selectList("com.wangYuan.mapper.EmpMapper.queryBySalDeptno", Map.of("sal","1500","deptno","30"));
list.forEach(System.out::println);
}
}
使用的工具类sessionUtils
public class sessionUtils {
private static SqlSessionFactory factory=null;
static{
try {
factory = new SqlSessionFactoryBuilder().build(Resources.getResourceAsStream("mybatis-config.xml"));
} catch (IOException e) {
e.printStackTrace();
}
}
public static SqlSession getSqlSession(){
SqlSession sqlSession=null;
if(factory!=null){
sqlSession = factory.openSession();
}
return sqlSession;
}
}