首先看一段applicationContext.xml中的自动扫描配置

<context:component-scan base-package="org.java.test" use-default-filters="false">
  <!-- 第一种:按照注解类型扫描,此处扫描@Service -->
  <context:include-filter type="annotation" expression="org.springframework.stereotype.Service" />
  <!-- 第二种:按照aspectj表达式的方式扫描四种类型 <context:include-filter type="aspectj"   expression="org.java.test.*.*.service.impl.*"/> -->
  <!-- 第三种:按照正则表达式的方式扫描四种类型 <context:include-filter type="regex" expression="org.java.test.*" /> -->
  <!-- 第四种:扫描具体的一个bean,扫描接口也可以
  <context:include-filter type="assignable" expression="org.java.test.admin.leave.service.WorkflowService"/> -->
</context:component-scan>

1、如果只写:<context:component-san base-package="org.java.test" />,那么spring默认会使用构造型注解查找基础包下的所有的类,我们必须要使用注解标注对应的类,让spring自动扫描到并进行装载处理。这些注解有:

  @Component :  通用的构造型注解,表示该类是spring的组件,也就是spring会将该类注册成Bean,ID默认为类限定名首字母小写,也可以在注解中显式指定ID。

  @Controller  :  表示该类为SpringMVC的控制器,用于标注视图控制层。

  @Repository :  表示该类为数据仓库,用于标注Dao层的实现类。

  @Service  :  表示该类为服务类,用于标注service层的实现类。

2.对于上面四种过滤策略,可根据需要选用。

spring之bean的自动扫描的更多相关文章

  1. @Autowired注解和启动自动扫描的三种方式(spring bean配置自动扫描功能的三种方式)

    前言: @Autowired注解代码定义 @Target({ElementType.CONSTRUCTOR, ElementType.FIELD, ElementType.METHOD, Elemen ...

  2. paip.spring 获取bean getBean 没有beanid的情况下

    paip.spring 获取bean  getBean 没有beanid的情况下 spring能自动扫描带有注解的bean文件.. 作者Attilax  艾龙,  EMAIL:1466519819@q ...

  3. Spring装配Bean之Java代码装配bean

    尽管通过组件扫描和自动装配实现Spring的自动化配置很方便也推荐,但是有时候自动配置的方式实现不了,就需要明确显示的配置Spring.比如说,想要将第三方库中的组件装配到自己的应用中,这样的情况下, ...

  4. 【转】Spring学习---Bean配置的三种方式(XML、注解、Java类)介绍与对比

    [原文]https://www.toutiao.com/i6594205115605844493/ Spring学习Bean配置的三种方式(XML.注解.Java类)介绍与对比 本文将详细介绍Spri ...

  5. Spring学习(十四)----- Spring Auto Scanning Components —— 自动扫描组件

    一.      Spring Auto Scanning Components —— 自动扫描组件 1.      Declares Components Manually——手动配置componen ...

  6. spring 中bean学习笔记

    spring 中bean 一.bean的定义和应用 1. bean 形象上类似于getXX()和setXX()的一种. 2. 由于java是面向对象的,类的方法和属性在使用中需要实例化. 3. 规律: ...

  7. Spring(004)-Bean装配

    一,问题,Bean找不到 代码 @Component public class DemoClass { public int doSth() { ; } } 测试代码 @RunWith(SpringJ ...

  8. Spring中@Bean与@Configuration

    一.Spring中Bean及@Bean的理解[1] Bean在Spring和SpringMVC中无所不在,将这个概念内化很重要,下面分享一下我的想法: 一.Bean是啥 1.Java面向对象,对象有方 ...

  9. 关于spring中bean配置的几件小事

    一.IOC和DI 1.IOC(Inversion of Control) 其思想是反转资源获取的方向.传统的资源查找方式要求组件向容器发起请求查找资源,作为回应,容器适时的返回资源:而应用了IOC之后 ...

随机推荐

  1. zoopkeeper 的ACL操作

    1.创建一个变量存放模式信息, private static final String MODE = "digest"; //ACL模式   2.在一个类的构造函数内放入初始化信息 ...

  2. Eureka入门一(了解概念)

    Eureka注册中心(8761端口) IDEA(开发工具) 1,创建项目勾选Eureka Server 2, 创建yml文件,拷贝配置,下面配置必须为false,意为,该项目不要作为客户端注册,因为本 ...

  3. springboot2.0+swagger集成

    场景:项目中添加Swagger配置,可以加速项目的开发,在快速开发项目中十分重要. 1.pom.xml添加swagger <!--swagger --> <dependency> ...

  4. k8s, etcd 多节点集群部署问题排查记录

    目录 文章目录 目录 部署环境 1. etcd 集群启动失败 解决 2. etcd 健康状态检查失败 解决 3. kube-apiserver 启动失败 解决 4. kubelet 启动失败 解决 5 ...

  5. python之openpyxl生成excel文件

    项目需要,需要自动生成PDF测试报告.经过对比之后,选择使用了reportlab模块. 项目背景:开发一个测试平台,供测试维护测试用例,执行测试用例,并且生成测试报告(包含PDF和excel),将生成 ...

  6. Fiddler抓取APP接口

    1.获取本机IP地址 2.打开手机设置无线连接(需要和电脑在同一局域网) 长按wifi连接修改无线连接 打开高级选项,设置主机名和端口后保存 3.设置Fiddler 从下图可以看出,抓到的全是HTTP ...

  7. MySQL MGR 5.7.22 on centos 6.3 单主/多主搭建测试

    搭建Mysql Group Replication本次搭建采用3个实例,三个服务器,同一个网段,MGR的参数配置在配置文件中添加.注意通讯端口号的配置,它用于组成员之间的通讯使用请确定当前MySQL版 ...

  8. DocX 在文档中插入图片时,为什么不能按实际设置的大小插入,而Spire.Doc却可以

    我的目标目标要求:将一个图片插入到页面中,页面边界为0,使用下面的代码去实现(button1UseDocX_Click函数),生成的文档不能达到目的.而使用Spire.Doc却能达到目的button1 ...

  9. 记一次nginx配置伪静态规则

    server { listen 80; server_name sss.cn; root "root/"; location / { index index.html index. ...

  10. 第七周课程总结&实验报告

    课程总结 主要学习了抽象类与接口的应用 1.抽象类的成员可以具有访问级别 接口的成员全部public级别 2.抽象类可以包含字段 接口不可以 3.抽象类可以继承接口 接口不能继承抽象类 4.抽象类的成 ...