一、MyBatis的搭建流程(idea+maven)
搭建流程
1.创建一个module
在任意项目下创建一个module
(3)
2.在pom.xml中引入所需jar包
在创建好的maven工程的pom.xml中进行依赖的导入,注意打包方式是jar
依赖
<dependencies>
<!-- Mybatis核心 -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.7</version>
</dependency>
<!-- junit测试 -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<!-- MySQL驱动 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.3</version>
</dependency>
</dependencies>
3.创建Mybatis的核心配置文件
习惯上命名为mybatis-config.xml,这个文件名仅仅只是建议,并非强制要求。
4.填写核心配置文件信息
核心配置文件主要用于配置连接数据库的环境以及MyBatis的全局配置信息。
<?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="development">
<environment id="development">
<!-- 事务的管理是jdbc-->
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="数据库连接地址"/>
<property name="username" value="用户名"/>
<property name="password" value="密码"/>
</dataSource>
</environment>
</environments>
<!--引入映射文件-->
<mappers>
<mapper resource="映射文件路径"/>
</mappers>
</configuration>
5.数据库建表
为了演示方便,简单创建一个表。
6.创建数据库表对应的对象
7.创建mapper接口
8.创建映射文件
映射文件的命名规则:
表所对应的实体类的类名+Mapper.xml
例如:表t_person,映射的实体类为Person,所对应的映射文件为PersonMapper.xml
因此一个映射文件对应一个实体类,对应一张表的操作
MyBatis映射文件用于编写SQL,访问以及操作表中的数据
(命名只是为了方便管理,无硬性要求)
<?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"><!--约束,约束不同xml中所写的标签也不同-->
<mapper namespace="接口全类名"><!--接口-->
</mapper>
9.在映射文件中写sql语句
由于我们在抽象类中只定义了一个插入方法,所以以插入方法为例
10.在MyBatis的核心配置文件中引入映射文件
至此MyBatis的项目框架就搭建完成了
测试
1.创建一个测试类
2.测试
@Test
public void f01() throws IOException {
//读取MyBatis的核心配置文件
InputStream stream = Resources.getResourceAsStream("mybatis-config.xml");
//创建SqlSessionFactoryBuilder对象
SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();
//通过核心配置文件所对应的字节输入流创建工厂类SqlSessionFactory,生产SqlSession对象
SqlSessionFactory build = sqlSessionFactoryBuilder.build(stream);
//创建SqlSession对象
SqlSession sqlSession = build.openSession();
//通过代理模式创建PersonMapper接口的代理实现类对象
PersonMapper mapper = sqlSession.getMapper(PersonMapper.class);
int i = mapper.insertPerson();
//事务提交
sqlSession.commit();
System.out.println(i);
}
如果返回值是1说明插入成功
查看数据库