引包: 链接:https://pan.baidu.com/s/1PGFeap4f-G2-z4tWrfRn5Q 密码:i9rb
举个栗子:
项目结构:
sqlMapConfig.xml:
<?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>
<!--
如果和spring整合则不需要配置
-->
<environments default="development">
<environment id="development">
<transactionManager type="JDBC" />
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3306/mybatis" />
<property name="username" value="root" />
<property name="password" value="root" />
</dataSource>
</environment>
</environments>
<!--
管理每一张表的映射文件
resource:引入映射文件, 包之间用"/"
-->
<mappers>
<mapper resource="com/rl/mapper/PersonTestMapper.xml" />
</mappers>
</configuration>
PersonTestMapper.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">
<!--
namespace: 命名空间
-->
<mapper namespace="com.rl.mapper.PersonTestMapper">
<!--
id: 唯一标识
parameterType: 入参类型
resultType: 返回值类型
-->
<select id="selectPersonById" parameterType="java.lang.Integer" resultType="com.rl.model.Person">
select * from person_test p where p.id = #{id}
</select>
</mapper>
测试类:MyBatisTest
package com.rl.test;
import java.io.InputStream;
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 org.junit.Before;
import org.junit.Test;
import com.rl.model.Person;
public class MyBatisTest {
SqlSessionFactory sqlSessionFactory;
@Before
public void setUp() throws Exception {
//加载配置文件
InputStream in = Resources.getResourceAsStream("sqlMapConfig.xml");
//初始化
sqlSessionFactory = new SqlSessionFactoryBuilder().build(in);
}
@Test
public void test() {
//创建一个session
SqlSession sqlSession = sqlSessionFactory.openSession();
try {
//selectOne 参数① 命名空间+id指定sql语句 参数② 入参
Person person = sqlSession.selectOne("com.rl.mapper.PersonTestMapper.selectPersonById", 1);
System.out.println(person);
} finally{
sqlSession.close();
}
}
}
输出结果:
Person [id=1, name=zhangsan, gender=1, address=广州, birthday=Sat Sep 08 00:00:00 CST 2018]