缘由
由于类中的部分代码重复量过多,而且一般不进行改变,这时可以设计一个工具类进行 调用即可, 可简化代码和提高效率
如 Mybatis 02 中的如下代码重复率很大
String resource = "config.xml";
Reader reader = Resources.getResourceAsReader(resource);
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(reader);
SqlSession sqlSession = factory.openSession();
创建工具类
package com.dhl.beyond.util;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import java.io.IOException;
import java.io.Reader;
public class MybatisUtil {
public static SqlSession getSqlSession() throws IOException {
String resource = "config.xml";
Reader reader = Resources.getResourceAsReader(resource);
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(reader);
SqlSession sqlSession = factory.openSession();
return sqlSession;
}
}
工具类引用如下
如查询表中所有内容
@Test
public void selectAllUser() throws IOException {
SqlSession session = MybatisUtil.getSqlSession();
List<Object> list = session.selectList("com.dhl.beyond.shiyan3.userMapper.selectAllUsers");
System.out.println(list);
}
Mapper文件如下
<select id="selectAllUsers" resultType="com.dhl.beyond.shiyan1.User">
select * from users
</select>