天天看点

MyBatis第一个连接mysql入门测试小程序

使用MyBatis实现以下功能:

根据用户id查询一个用户:

一:加入mybatis核心包、依赖包、数据驱动包:

MyBatis第一个连接mysql入门测试小程序

二:创建映射文件User.xml与配置文件SqlMapConfig.xml:

MyBatis第一个连接mysql入门测试小程序

User.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:命名空间,用于隔离sql>
<mapper namespace="test">
	<select id="getUserById" parameterType="int" resultType="com.sea.crm.pojo.User">
		select * from user where id=#{id}
	</select>
</mapper>
           

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配置将废除 -->
	<environments default="development">
		<environment id="development">
			<!-- 使用jdbc事务管理 -->
			<transactionManager type="JDBC" />
			<!-- 数据库连接池 -->
			<dataSource type="POOLED">
				<property name="driver" value="com.mysql.jdbc.Driver" />
				<property name="url"
					value="jdbc:mysql://localhost:3306/seamybatis?characterEncoding=utf-8" />
				<property name="username" value="******" />
				<property name="password" value="******" />
			</dataSource>
		</environment>
	</environments>
	<mappers>
	<mapper resource="sqlmap/user.xml"/>
	</mappers>
</configuration>
           

三:创建pojo类:

pojo类作为mybatis进行sql映射使用,pojo类通常与数据库表对应(数据库表和pojo这里我就省略了)

下面即可用单元测试测试程序:

package com.sea.crm.test;

import java.io.InputStream;

import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.junit.Test;

public class MybatisTest {
	@Test
	// 测试程序步骤:

	public void testqueryUserById() {
		// 1. 创建SqlSessionFactoryBuilder对象
		SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();
		// 2. 加载SqlMapConfig.xml配置文件
		InputStream in = MybatisTest.class.getResourceAsStream("/SqlMapConfig.xml");
		// 3. 创建SqlSessionFactory对象
		SqlSessionFactory factory = builder.build(in);
		// 4. 创建SqlSession对象
		SqlSession sqlSession = factory.openSession();
		// 5. 执行SqlSession对象执行查询,获取结果User
		Object user = sqlSession.selectOne("getUserById", 10);
		// 6. 打印结果
		System.out.println(user);
		// 7. 释放资源
		sqlSession.close();

	}
}