第一步:导入jar包
第二步:配置mybatis的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">
<!-- mybatis根元素节点 -->
<configuration>
<!-- mybatis环境配置 -->
<environments default="development">
<!-- 配置mybatis运行环境 需指定运行环境id、事务管理、数据源等配置 -->
<environment id="development">
<!-- 配置事务管理 采用JDBC的事务管理-->
<transactionManager type="JDBC"/>
<!-- 配置数据源 POOLED:mybatis自带的数据源 JNDI:基于tomcat的数据源 -->
<dataSource type="POOLED">
<!-- 驱动 -->
<property name="driver" value="com.mysql.jdbc.Driver"/>
<!-- 连接字符串 -->
<property name="url" value="jdbc:mysql://localhost:3306/demo2"/>
<!-- 用户名 -->
<property name="username" value="root"/>
<!-- 密码 -->
<property name="password" value="accp"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="com/bdqn/dao/mapper/UserInfoMapper.xml"/>
</mappers>
</configuration>
第三步:创建mapper映射文件
<?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 : 用于绑定Dao接口,即面向接口编程....
好处:当使用了namespace之后,就可以不用再编写接口的实现类,
业务逻辑会直接通过这个绑定找到相对应的SQL语句进行处理.
-->
<mapper namespace="com.bdqn.dao.UserInfoMapper">
<select id="count" resultType="int">
select count(*) from t_userInfo
</select>
<select id="getById" resultType="com.bdqn.pojo.UserInfo">
select * from t_userInfo where userNo='user001'
</select>
</mapper>
第四步:建立mapper对应DAO接口
public interface UserInfoMapper {
/**
*查询数据总数
* @return
*/
int count();
/**
*
* 根据 mapper中sql语句 userNo='user001' 查询userinfo表
*/
UserInfo getById();
}
第五步:main方法测试
package com.bdqn.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 com.bdqn.dao.UserInfoMapper;
import com.bdqn.pojo.UserInfo;
public class Test {
public static void main(String[] args) {
try {
//读取全局配置文件
InputStream is=Resources.getResourceAsStream("mybatis-config.xml");
//创建SqlSessionFactory对象
SqlSessionFactory factory=new SqlSessionFactoryBuilder().build(is);
//创建SqlSession对象
SqlSession sqlSession=factory.openSession();
//mybatis通过JDK的动态代理方式,在启动加载配置文件时,根据配置的Mapper.xml去生成实现类
UserInfoMapper userInfoMapper=sqlSession.getMapper(UserInfoMapper.class);
UserInfo userInfo=userInfoMapper.getById();
System.out.println("编号:"+userInfo.getUserNo());
System.out.println("账号:"+userInfo.getUsername());
System.out.println("密码:"+userInfo.getPassword());
} catch (Exception e) {
e.printStackTrace();
}
}
}
其中POJO包中就是一张userinfo实体: