快速入门
创建Dao接口
public interface IUserDao {
List<User> selectAll();
}
编写SqlMapConfig.xml配置文件
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<typeAliases>
<package name="com.elvis.pojo"/>
</typeAliases>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"></transactionManager>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://192.168.137.144:3306/self_mybatis?useSSL=false&characterEncoding=UTF-8"></property>
<property name="username" value="root"></property>
<property name="password" value="123456"></property>
</dataSource>
</environment>
</environments>
<!-- 指定mapper映射文件 -->
<mappers>
<mapper resource="IUserDao.xml"></mapper>
</mappers>
</configuration>
编写mapper映射文件IUserDao.xml
<?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.elvis.dao.IUserDao">
<select id="selectAll" resultType="User">
select * from user_t
</select>
</mapper>
编写test方法
@Test
public void testSelectAll() throws IOException {
InputStream resourceAsStream = Resources.getResourceAsStream("SqlMapConfig.xml");
SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();
SqlSessionFactory sqlSessionFactory = builder.build(resourceAsStream);
SqlSession session = sqlSessionFactory.openSession();
List<User> list = session.selectList("com.elvis.dao.IUserDao.selectAll");
System.out.println(list);
}
测试

基于代理模式开发
修改SqlMapConfig配置文件
- 修改mapper文件位置规则,根据包名查找
<mappers>
<!--<mapper resource="IUserDao.xml"></mapper>-->
<package name="com.elvis.dao"/>
</mappers>
修改mapper映射文件的位置
- 放置到与Dao接口同名目录下

修改测试类
@Test
public void testSelectAll() throws IOException {
InputStream resourceAsStream = Resources.getResourceAsStream("SqlMapConfig.xml");
SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();
SqlSessionFactory sqlSessionFactory = builder.build(resourceAsStream);
SqlSession session = sqlSessionFactory.openSession();
// 基于代理模式,使用getMapper获取代理的接口实现
IUserDao mapper = session.getMapper(IUserDao.class);
List<User> list = mapper.selectAll();
// List<User> list = session.selectList("com.elvis.dao.IUserDao.selectAll");
System.out.println(list);
}
测试
原文链接: https://blog.csdn.net/Kiven_ch/article/details/117838291