002 包扫描注解@ComponentScan

一 .概述

  在我们之前使用spring的时候,我们通常会配置一个组件扫描器帮助我们将spring注解标记的bean加入到IOC容器之中,当我们不再使用xml的形式的时候,

  我们就可以使用包扫描注解完成这个任务.



二 .包扫描注解  

@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
@Documented
public @interface ComponentScan 

我们一般会将这个注解加入到一个配置类之中,在这里说明一下该注解的核心作用,

  将是按照一定的规则将bean加入到IOC容器之中,当我们使用springboot的时候,我们可以将一般会采用默认的策略来完成这个任务.



002 包扫描注解@ComponentScan

原文地址:https://www.cnblogs.com/trekxu/p/9565222.html

时间: 2024-09-29 08:01:38

002 包扫描注解@ComponentScan的相关文章

30Springd的包扫描——<context:component-scan base-package=” ”/>

在context中配置 如:在base-package指明一个包: <context:component-scan base-package="cn.edu.dao"/> 表明cn.gacl.java包及其子包中,如果某个类的头上带有特定的注解 @Component,@Repository,@Service,@Controller,就会将这个对象作为Bean注册进spring容器. 在<context:component-scan base-package=” ”/&

记一次包扫描的犯错

很长时间对于无法注入依赖的问题很是苦恼,对于类似的问题我做出如下总结: 1.对于分布式架构来说 如果提示无法注入依赖,就考虑没有引用哪个工程,对于war包来说要全部引用,举个栗子: <?xml version="1.0"?> <project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns

配置扫描注解的包

配置文件: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.o

Spring IoC 源码分析 (基于注解) 之 包扫描

在上篇文章Spring IoC 源码分析 (基于注解) 一我们分析到,我们通过AnnotationConfigApplicationContext类传入一个包路径启动Spring之后,会首先初始化包扫描的过滤规则.那我们今天就来看下包扫描的具体过程. 还是先看下面的代码: AnnotationConfigApplicationContext类 //该构造函数会自动扫描以给定的包及其子包下的所有类,并自动识别所有的Spring Bean,将其注册到容器中 public AnnotationConf

Spring自动装配与扫描注解

1 javabean的自动装配 自动注入,减少xml文件的配置信息. 1 <?xml version="1.0" encoding="UTF-8"?> 2 <!-- 到入xml文件的约束 --> 3 <beans xmlns="http://www.springframework.org/schema/beans" 4 xmlns:p="http://www.springframework.org/sche

spring 排除指定的类或者包扫描

<!-- 排除Controller注解的扫描 --> <context:component-scan base-package="exampleBean"> <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller" /> </context:component-scan&

spring包扫描问题

最近做项目时发现一个spring包扫描问题,项目中使用spring.springMVC.mybatis框架,因为整个项目是按模块来分布式开发,最终将各个模块整合在一起,但是整合时发现有些模块的service层和controller层包没有扫描到. 举个例子:A模块的service层包为 com.project.A.service,B模块的service层的包为com.project.base.B.service:在spring的配置文件里包扫描器的配置为: <context:component-

整合Spring时Service层为什么不做全局包扫描详解

转载:http://blog.csdn.net/s740556472/article/details/54879954 一.Spring和SpringMVC的父子容器关系 1.讲问题之前要先明白一个关系 一般来说,我们在整合Spring和SpringMVC这两个框架中,web.xml会这样写到: <!-- 加载spring容器 --> <!-- 初始化加载application.xml的各种配置文件 --> <context-param> <param-name&

为啥Spring和Spring MVC包扫描要分开?

背景:       最近在搭建新工程的时候发现有些Spring的配置不是很了解,比如Spring 配置里面明明配置了component-scan,为啥Spring MVC配置文件还需要配置一下,这样岂不是多此一举?由于以前基本是在现有的工程上直接开发或者别的工程的配置文件直接拷贝过来,所以也没太关注这个问题.出于好奇,谷歌了一下发现原来这个里面大有学问呢,详情请见下文.正常代码如下: Xml代码   <!-- spring 配置文件--> <context:component-scan