Spring Boot 利用 XML 方式整合 MyBatis攻略
本文将介绍使用 Spring Boot 通过 XML 配置方式整合 MyBatis 的完整流程,并提供两个示例。
1. 添加依赖
在 pom.xml 文件中添加如下依赖:
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>x.x.x</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>x.x.xx</version>
</dependency>
其中,mybatis-spring-boot-starter 是 MyBatis 在 Spring Boot 环境下的自动配置依赖,mysql-connector-java 是 MySQL 数据库的驱动。
2. 配置数据源
在 application.properties 文件中配置数据库连接信息,例如:
spring.datasource.url=jdbc:mysql://localhost:3306/test?useSSL=false&characterEncoding=utf8
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
3. 创建 MyBatis 配置文件
在 resources 目录下创建 MyBatis 配置文件,例如:mybatis-config.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>
<mappers>
<mapper resource="mapper/xxxMapper.xml"/>
</mappers>
</configuration>
其中,mapper/xxxMapper.xml
是实际的 Mapper 文件路径。
4. 创建 Mapper 文件
在 resources 目录下创建 Mapper 文件,例如:mapper/xxxMapper.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.example.mapper.xxxMapper">
<resultMap id="xxxMap" type="com.example.entity.xxxEntity">
<result column="id" property="id"/>
<result column="name" property="name"/>
</resultMap>
<select id="selectById" resultMap="xxxMap">
SELECT * FROM xxx WHERE id = #{id}
</select>
</mapper>
其中,com.example.entity.xxxEntity
是实际的 Entity 类路径。
5. 创建 Entity 类
创建对应的 Entity 类,例如:com.example.entity.xxxEntity
public class XxxEntity {
private Integer id;
private String name;
// 省略 getter/setter 方法
}
6. 创建 DAO 接口
创建对应的 DAO 接口,例如:com.example.mapper.XxxMapper
public interface XxxMapper {
XxxEntity selectById(Integer id);
}
7. 配置自动扫描
在启动类上配置自动扫描,例如:
@SpringBootApplication
@MapperScan("com.example.mapper")
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
其中,@MapperScan("com.example.mapper")
是扫描 Mapper 接口的路径。
示例一:查询并返回对象
@Service
public class XxxServiceImpl implements XxxService {
@Autowired
private XxxMapper xxxMapper;
@Override
public XxxEntity selectById(Integer id) {
return xxxMapper.selectById(id);
}
}
示例二:查询并返回列表
@Service
public class XxxServiceImpl implements XxxService {
@Autowired
private XxxMapper xxxMapper;
@Override
public List<XxxEntity> selectAll() {
return xxxMapper.selectAll();
}
}
public interface XxxMapper {
List<XxxEntity> selectAll();
}
至此,整合 MyBatis 的 XML 配置方式在 Spring Boot 中的实现流程完整地介绍了出来,以上示例代码均是以 Spring Boot 2.5.1 版本为例实现。
祝使用愉快!
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Spring Boot 利用 XML 方式整合 MyBatis - Python技术站