一、添加maven依赖
去 maven仓库中找自己需要的版本
二、构建sqlSessionFactory
String resource = "org/mybatis/example/mybatis-config.xml";
InputStream inputStream = Resources.getResourceAsStream(resource);
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
三、编写配置文件(环境+mapper)
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="${driver}"/>
<property name="url" value="${url}"/>
<property name="username" value="${username}"/>
<property name="password" value="${password}"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="org/mybatis/example/BlogMapper.xml"/>
</mappers>
</configuration>
四、写DAO+MAPPER.XML
package com.yzm.dao;
import com.yzm.pojo.User;
import java.util.List;
public interface UserDao {
List<User> getUserList();
}
<?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.yzm.dao.UserDao">
<select id="getUserList" resultType="com.yzm.pojo.User">
select * from mybatis.user;
</select>
</mapper>
五、获取session然后执行
@Test
public void test(){
try (SqlSession sqlSession = MybatisUtils.getSqlSession()){
UserDao mapper = sqlSession.getMapper(UserDao.class);
List<User> userList = (List<User>) mapper.getUserList();
for (User user : userList) {
System.out.println(user.getName()+user.getPassword());
}
}
}
六、出现的问题
maven项目中如果xml文件没在resource文件夹下是不会出现再目标编码里面的。
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>true</filtering>
</resource>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>true</filtering>
</resource>
</resources>
</build>