@componentscan和@mapperscan区别
时间: 2023-05-29 18:01:08 浏览: 490
@componentscan和@mapperscan是Spring Boot中的注解。
@componentscan扫描并注册了被@Component、@Repository、@Service、@Controller、@Configuration等注解标识的类,将其放入Spring上下文中,方便其他组件进行调用。
@mapperscan是MyBatis框架中的注解,用于扫描Mapper接口所在的包,并将其注册到MyBatis中,让Mapper接口能够被注入到其他组件中进行调用。
区别在于,@componentscan主要是扫描和注册Spring的Bean,而@mapperscan主要是扫描和注册Mapper接口,两者作用不同,但都是为了提高组件的可用性。
相关问题
Spring Booti配置文件中配置Mapperi扫描的注解是 A.@ComponentScan B.@MapperScanner C.@EnableMapperScan D.@MapperScan
回答: Spring Boot配置文件中配置Mapper扫描的注解是D.@MapperScan。\[3\]
#### 引用[.reference_title]
- *1* *2* *3* [03-SpringBoot 自动配置](https://blog.csdn.net/qq_41865229/article/details/125168224)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
@MapperScan和@ComponentScan
@MapperScan和@ComponentScan都是用于扫描包的注解,但是它们有一些区别。
@MapperScan注解用于扫描Mapper接口所在的包,并生成相应的接口实现类。在持久层的接口上添加@Mapper注解后,编译时会生成对应的接口实现类。为了避免在每个接口上都添加@Mapper注解,可以使用@MapperScan注解来指定要编译成接口实现类的包路径。在编译完成后,该包下的所有接口都会生成相应的接口实现类。这样可以简化代码的编写。
@ComponentScan注解是用于自动扫描包路径下的@Controller、@Service、@Repository、@Component等注解标注的类,并将这些类装配到Spring容器中。通过@ComponentScan注解,可以自动将符合扫描规则的类注入到Spring容器中,方便进行依赖注入和其他操作。
它们的主要区别在于扫描的注解和目的不同。@MapperScan主要用于扫描Mapper接口并生成对应的实现类,而@ComponentScan主要用于扫描带有特定注解的类并装配到Spring容器中。
总结起来,@MapperScan注解用于扫描Mapper接口的包并生成接口实现类,而@ComponentScan注解用于扫描带有特定注解的类并装配到Spring容器中。它们可以同时使用,但需要注意扫描的包路径不能重叠,避免产生错误。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *3* [@MapperScan和@ComponentScan的区别](https://blog.csdn.net/m0_37597572/article/details/82625631)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
- *2* [@MapperScan和@ComponentScan使用问题](https://blog.csdn.net/weixin_45948234/article/details/110954215)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文