@MapperScan中annotationClass 属性作用
时间: 2023-10-26 20:00:20 浏览: 44
@MapperScan注解中的annotationClass属性用于指定要扫描的Mapper接口上的注解类型。这个属性默认为@Mapper注解,如果我们的Mapper接口上的注解不是@Mapper,那么我们就需要通过annotationClass属性来指定要扫描的注解类型。例如,如果我们的Mapper接口上的注解是@Repository,那么我们就需要在@MapperScan注解中指定annotationClass属性的值为@Repository.class,这样Spring Boot就能够正确地扫描到我们的Mapper接口并将其注册为MyBatis的Mapper接口。
相关问题
@MapperScan的属性
@MapperScan是MyBatis框架中用来扫描Mapper接口的注解之一,它有以下两个重要属性:
1. value:指定要扫描的Mapper接口所在的包,可以使用通配符指定多个包,如:@MapperScan("com.example.mapper")或@MapperScan({"com.example.mapper1", "com.example.mapper2"})
2. basePackages:与value属性作用相同,也是用来指定要扫描的Mapper接口所在的包,但它可以指定多个包,如:@MapperScan(basePackages = {"com.example.mapper1", "com.example.mapper2"})
同时,@MapperScan还有其他一些属性可以用来配置Mapper扫描器,比如annotationClass、sqlSessionFactoryRef等,这些属性的作用可以根据具体的使用场景进行设置。
@MapperScan(
@MapperScan是一个Spring注解,用于指定需要扫描的Mapper接口所在的包路径,并将这些Mapper接口初始化为Spring容器的Bean。通过使用@MapperScan注解,我们可以方便地将MyBatis的Mapper接口与Spring整合起来。
在@MapperScan注解中,可以通过设置value属性来指定需要扫描的包路径,可以是单个路径,也可以是多个路径。同时,还可以使用markerInterface属性来指定需要扫描的Mapper接口所实现的基础接口。
每个@MapperScan注解最终都会初始化一个MapperScannerConfigurer对象,并且会设置关键的属性basePackage、annotationClass、markerInterface来进行相关的配置。