口(添上@Mapper注解,表明这时一个mapper接口,使用其操作数据库),service实现类,mapper.xml文件(3).在application.yml配置文件中配置mybatis规则
时间: 2024-09-20 22:03:59 浏览: 29
day70 MyBatis使用mapper重构xml文件
在Spring Boot项目中,`@Mapper`注解用于MyBatis框架中,它是一个特殊的注解,标记在DAO层(Data Access Object)的接口上,表示这个接口对应着数据库的映射。当运行时,Spring会自动扫描带有`@Mapper`注解的接口,并生成相应的实现类(Mapper XML文件的编译结果),提供对数据库的操作。
例如,你可能会有一个这样的接口:
```java
// UserMapper.java
import org.springframework.stereotype.Repository;
@Repository
public interface UserMapper {
List<User> findAll();
User findById(int id);
}
```
在这个例子中,`UserMapper`接口定义了查询所有用户和单个用户的方法。
对应的`mapper.xml`文件(通常位于resources/mapper目录下)会有动态SQL的定义,如查询语句,这里不做展示,因为它是XML形式的。
在`application.yml`(或者`.properties`)配置文件中,你可以设置MyBatis的相关属性,比如数据源、事务管理等。例如:
```yaml
spring:
mybatis:
# 数据源配置
type-aliases-package: com.example.entity
mapper-locations: classpath:mapper/*.xml
# SQLSessionFactoryBean的配置
sqlSessionFactoryRef: sqlSessionFactory
# 自动扫描mapper接口
mapper-interfaces: com.example.mapper.*
# 其他配置项...
```
这里配置了数据源包路径、mapper XML文件的位置,以及自动扫描mapper接口的前缀。`sqlSessionFactoryRef`指定了Spring如何获取已经创建好的`SqlSessionFactory`实例。
阅读全文