第一步:首先创建maven项目
第二步:导入依赖jar包
(maven地址:https://mvnrepository.com/ )
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.wang.example</groupId>
<artifactId>mabatis_t1</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.5</version>
</dependency>
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.10</version>
</dependency>
<!-- https://mvnrepository.com/artifact/log4j/log4j -->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
<!-- https://mvnrepository.com/artifact/junit/junit -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.13.1</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
第三步:创建mybatis配置文件
1,引入数据库的配置文件
2,设置log4j 日志管理
3,创建数据源,采用jdbc的方式,连接数据库
4, 将自己定义的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>
<!--第一步 引入database-->
<properties resource="database.properties"></properties>
<!--配置mybatis的log实现为LOG4J-->
<settings>
<setting name="logImpl" value="LOG4J"/>
</settings>
<environments default="development">
<environment id="development">
<!--配置事务管理,采用JDBC的事务管理 -->
<transactionManager type="JDBC"></transactionManager>
<!-- POOLED:mybatis自带的数据源,JNDI:基于tomcat的数据源 -->
<dataSource type="POOLED">
<property name="driver" value="${driver}"/>
<property name="url" value="${url}"/>
<property name="username" value="${user}"/>
<property name="password" value="${password}"/>
</dataSource>
</environment>
</environments>
<!-- 将mapper xml文件加入到配置文件中-->
<mappers>
<mapper resource="mapper/StudentMapper.xml"></mapper>
</mappers>
</configuration>
注意:
看自己定义的mapper文件的路径是否正确,是否在根目录下,注意自己的文件夹的位置,可以在这里定义多个mapper,可以写多个
<mappers>
<mapper resource="mapper/StudentMapper.xml"></mapper>
</mappers>
第四步:mapper定义
头部的话去网上找最新的复制一下就可以了(如果联网的话下载一个插件MyBatisCodeHelperPro,有这个插件就可以直接创建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 :接口或者mapper的路径-->
<mapper namespace="com.xk.dao.StudentMapper">
<!-- select 标签 查询 id:方法名 (不能重复) resultType:返回值类型 -->
<select id="getStuCount" resultType="int" >
select count(1) as stucount from student
</select>
第五步:测试
首先将配置文件加载进来,然后根据配置文件创建SqlSessionFactory
public class StuTest{
private Logger logger = Logger.getLogger(StuTest.class.getName());
@Test
public void testA() throws IOException {
//将mybatis-config.xml配置文件 转换为输入流(InputStream)
//目的 获取配置文件的信息
InputStream is = Resources.getResourceAsStream("mybatis-config.xml");
//根据配置文件信息 创建SqlSessionFactory
SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(is);
//获取SqlSession
SqlSession sqlSession = sessionFactory.openSession();
//查询的方法 只返回一个结果
//包名.XXXMapper.方法名(id属性)
int count = sqlSession.selectOne("mapper.StudentMapper.getStuCount");
logger.debug("学生人数为:"+count);
sqlSession.close();
}
}