springboot 如何设置 sqlSessionFactory或sqlSessionTemplate
时间: 2024-07-18 15:01:45 浏览: 167
Spring Boot 中配置 `SqlSessionFactory` 或 `SqlSessionTemplate` 通常是在使用 MyBatis 进行数据库操作时。首先,你需要在你的项目中添加 Spring Data MyBatis 或者 MyBatis-Spring 的依赖。以下是基本的步骤:
1. **添加依赖**:
在你的 `pom.xml` 或者 `build.gradle` 文件中添加 MyBatis 和其整合 Spring 的依赖,例如:
```xml
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
</dependency>
```
2. **创建数据源**:
如果你已经有了一个 DataSource,可以在 Application 类上注解 `@EnableAutoConfiguration` 后配置它。比如:
```java
@Bean
public DataSource dataSource() {
// 创建并配置数据源
}
```
3. **配置 MyBatis 映射文件**:
将 MyBatis 的 XML 配置文件放置在 resources 下,通常是 `mapper/*.xml`。
4. **注入 SqlSessionFactory 或 SqlSessionTemplate**:
Spring会自动扫描 mapper 接口,并基于那些接口生成对应的 Dao 对象。你可以通过 Autowired 注入 SqlSessionFactory 或 SqlSessionTemplate。例如:
```java
@Autowired
private SqlSessionFactory sqlSessionFactory;
```
或者
```java
@Autowired
private SqlSessionTemplate sqlSessionTemplate;
```
5. **使用 SqlSessionFactory 或 SqlSessionTemplate**:
现在你可以使用注入的对象执行 SQL 查询了。比如:
```java
List<User> users = sqlSessionTemplate.selectList("select * from user");
```
记得在每个 Service 或 Controller 类中,需要在 `@Service` 或 `@RestController` 上加上 `@Transactional` 注解,以开启事务处理。
阅读全文