bean扫描的配置详解

简介: bean扫描的配置详解


image.png

1.mvc:annotation-driven

:确定调用哪个controller的哪个方法来处理当前请求。如果没有回找不到@RequestMapping指定的路径。

2.context:annotation-config

扫描的注解如下:@Autowired,@Resource 、@PostConstruct、@PreDestroy,@PersistenceContext,@Required。

3.context:component-scan

:context:component-scan做了context:annotation-config要做的事情,还额外支持@Component,@Repository,@Service,  @Controller @RestController, @ControllerAdvice, and @Configuration 注解。

所以配置context:component-scan就不需要配置context:annotation- config。

     <context:component-scan base-package="test.*.controller" use-default-filters="false">        
            <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/>     
            <context:include-filter type="annotation" expression="org.springframework.web.bind.annotation.ControllerAdvice"/> 
     </context:component-scan>

use-default-filters=“false”,不使用默认过滤器(所有包都不自动扫描),需要

,全部包都扫描,除了标签里面配置的。

      <context:component-scan base-package="test.*">
        <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
        <context:exclude-filter type="annotation" expression="org.springframework.web.bind.annotation.ControllerAdvice"/>
      </context:component-scan> 


相关文章
|
4月前
|
Java
springboot 读取配置信息和对应bean
springboot 读取配置信息和对应bean
|
SQL 关系型数据库 MySQL
SpringBoot自定义配置注入的方式:自定义配置文件注入,从mysql读取配置进行注入
SpringBoot自定义配置注入的方式:自定义配置文件注入,从mysql读取配置进行注入
308 0
|
XML 开发框架 JSON
Spring注解扫描:ComponentScan使用及原理详解
当下`Spring Boot`之所以能成为主流首选开发框架,得益于其核心思想:**约定大于配置**和`Spring`提供的基于注解配置式开发,解决了繁琐的`XML`文件配置问题,大大提高了开发效率。基于`Spring MVC`三层架构框架开发的项目中大量用到`@Controller, @Service...`等注解,即使这些类在不同包路径下,都能被注入到`Spring`容器中,然后可以相互之间进行依赖注入、使用。这时候就有一个问题了:`Spring`是如何将声明了`@Component`注解的Bean注入到`Spring`容器当中的呢?怎么做到bean的类定义可以随意写在不同包路径下?
516 0
|
Java 测试技术 Spring
Spring-基于注解的配置[02自动装载bean](下)
Spring-基于注解的配置[02自动装载bean](下)
66 0
Spring-基于注解的配置[02自动装载bean](下)
|
XML 前端开发 Java
Spring-基于注解的配置[01定义Bean+扫描Bean]
Spring-基于注解的配置[01定义Bean+扫描Bean]
127 0
|
Java Spring 容器
Spring-基于注解的配置[02自动装载bean](上)
Spring-基于注解的配置[02自动装载bean]
64 0
ssm-事务--使用配置文件方式进行配置,使用注解进行使用
ssm-事务--使用配置文件方式进行配置,使用注解进行使用
|
XML 消息中间件 SpringCloudAlibaba
Spring——2、使用@ComponentScan自动扫描组件并指定扫描规则
在实际项目中,我们更多的是使用Spring的包扫描功能对项目中的包进行扫描,凡是在指定的包或其子包中的类上标注了@Repository、@Service、@Controller、@Component注解的类都会被扫描到,并将这个类注入到Spring容器中。 Spring包扫描功能可以使用XML配置文件进行配置,也可以直接使用@ComponentScan注解进行设置,使用@ComponentScan注解进行设置比使用XML配置文件来配置要简单的多。
457 0
Spring——2、使用@ComponentScan自动扫描组件并指定扫描规则
|
缓存 Java 索引
Spring 类路径下 Bean 扫描实现分析
前言 接上篇 Spring 5 启动性能优化之 @Indexed,上篇提到 Spring 可以在编译时生成索引文件,在应用上下文启动时可以通过索引文件查找所需要的注册的 Bean,如果不存在索引文件或者配置了不处理索引文件的参数,则不会从索引文件获取元数据。这时,Spring 便需要从指定的包中扫描 bean。
527 0