MyBatis案例一:入门
创建maven项目
- 使用maven project向导创建一个maven项目(不使用骨架,package使用:jar)
- 配置依赖包:
<dependencies>
<!-- https://mvnrepository.com/artifact/junit/junit -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.2.6</version>
</dependency>
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.6</version>
</dependency>
</dependencies>
- 配置构建插件
<build>
<plugins>
<!-- 资源文件拷贝插件 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>2.7</version>
<configuration>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<!-- java编译插件 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.2</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
</plugins>
</build>
配置SqlMapConfig.xml
- 在src/main/java下创建mybatis配置文件SqlMapConfig.xml
- 添加dtd约束
<?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="mysql">
<environment id="mysql">
<transactionManager type="jdbc"></transactionManager>
<dataSource type="pooled">
<property name="url" value="jdbc:mysql://localhost:3306/hr"/>
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="username" value="root"/>
<property name="password" value="root"/>
</dataSource>
</environment>
</environments>
</configuration>
使用MyBatis
- 创建com.yy.mapper包、com.yy.domain包(添加实体类Dept)
- 创建DeptMapper接口文件,添加方法:
public List<Dept> getAll();
3.使用mybatis向导,创建DeptMapper.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">
<mapper namespace="com.yy.mapper.DeptMapper">
</mapper>
- 添加查询statement
<select id="getAll" parameterType="com.yy.domain.Dept">
select * from dept
</select>
- 在DeptMapper.java文件上右键,使用junit向导,创建单元测试
public class DeptMapperTest {
@Test
public void testGetAll() {
}
}
- 编写测试方法代码
@Test
public void testGetAll() throws IOException {
InputStream in = Resources.getResourceAsStream("SqlMapConfig.xml");
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(in);
SqlSession session = factory.openSession();
DeptMapper deptMapper = session.getMapper(DeptMapper.class);
session.close();
}
- 在SqlMapConfig文件中添加映射文件
<mappers>
<mapper resource="com/yy/mapper/DeptMapper.xml" />
</mappers>
-
运行测试(项目右键=》run as=》Maven test),查看控制台显示信息
-
在DeptMapperTest.java文件上右键,直接运行junit Test也可以测试