Spring Boot中集成MyBatis和JdbcTemplate可以通过配置文件和依赖注入来实现。以下是一个简单的示例:
首先,在pom.xml文件中添加以下依赖:
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
然后,在application.properties文件中配置数据库连接信息:
spring.datasource.url=jdbc:mysql://localhost:3306/mydb
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
接着,创建一个MyBatis的Mapper和对应的XML文件:
@Mapper
public interface UserMapper {
@Select("SELECT * FROM users")
List<User> getAllUsers();
}
<?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.demo.mapper.UserMapper">
<select id="getAllUsers" resultType="com.example.demo.model.User">
SELECT * FROM users
</select>
</mapper>
然后,可以在Service中注入UserMapper并调用方法来操作数据库:
@Service
public class UserService {
@Autowired
private UserMapper userMapper;
public List<User> getAllUsers() {
return userMapper.getAllUsers();
}
}
另外,如果要使用JdbcTemplate,可以直接注入JdbcTemplate并使用它来执行SQL语句:
@Autowired
private JdbcTemplate jdbcTemplate;
public List<Map<String, Object>> getAllUsers() {
return jdbcTemplate.queryForList("SELECT * FROM users");
}
这样就可以在Spring Boot应用中集成MyBatis和JdbcTemplate来操作数据库了。需要注意的是,为了让Spring Boot能够扫描到MyBatis的Mapper接口,需要在启动类上加上@MapperScan("com.example.demo.mapper")
注解。