Spring从两个角度实现自动化装配:组件扫描 (Spring自动发现应用上下文中所创建的bean)自动装配(autowiring)自动满足bean之间的依赖

组件扫描:

package test.soundsystem;import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;import test.voice.Book;
/** 使用basePackageClasses,spring会自动扫描这些类所在的包,* 建议在包中写空标记接口,用来被扫描,有利于项目重构。* * */
@Configuration
@ComponentScan(basePackageClasses={Book.class,CompactDisc.class})
public class CDPlayerConfig {
}

接口:

package test.soundsystem;public interface CompactDisc {void play();
}

实现类:

package test.soundsystem;import javax.inject.Named;
//Named 和 Component相似
@Named
public class SgtPeppers implements CompactDisc {private String title="Sgt. Pepper's Lonely Hearts Club Band";private String artist = "The Beatles";public void play() {System.out.println("Playing "+title+" by "+artist);}
}

测试类:

package test.soundsystem;import javax.inject.Inject;import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;import test.voice.Book;@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes=CDPlayerConfig.class)
public class CDPlayerTest {@Autowiredprivate CompactDisc cd;@Injectprivate Book book;@Testpublic void cdShouldNotBeNull(){cd.play();book.read();}
}

转载于:https://www.cnblogs.com/zhengwenqiang/p/6804619.html

【Spring 核心】装配Bean(一) 自动化装配相关推荐

  1. spring核心:bean工厂的装配 2

    本文继续上面的 spring核心:bean工厂的装配系列.主要包含: 3.使用构造函数创建bean 4.使用静态工厂方法创建bean 5.使用非静态工厂方法创建bean 6.bean的标识符 3.使用 ...

  2. Spring装配Bean之自动化装配(一)

    自动化装配 spring从两个角度来实现自动化装配 组件扫描: spring会自动发现应用上下文中所创建的bean 自动装配: spring自动满足bean之间的依赖 创建能被spring发现的bea ...

  3. spring核心:bean工厂的装配 1

    本文中主要包含spring中bean工厂的相关知识.主要包含一下话题: 1.bean factory getstart初时bean工厂 2.bean基础定义 3.使用构造函数创建bean 4.使用静态 ...

  4. spring核心:bean工厂的装配 3

    本文中主要包含下面的几个内容: 7.何时使用singleton 8.设置bean的属性和协作者 9.bean构造函数选择决议 10.自动装配 11.依赖检查 7.何时使用singleton 如果bea ...

  5. spring核心:bean工厂的装配 6

    本文中主要包含: 23.使用后台处理器post-processor 1.使用BeanPostProcessor 如果向一个bean factory注册post-processor的话,那么对于这个工厂 ...

  6. spring二:装配bean(自动装配)

    创建应用对象之间协作关系的行为通常称为装配(wiring),这就是依赖注入(DI)的本质. Spring提供了三种主要的装配机制: 1. 在xml中进行显式配置.  2. 在java中进行显式配置. ...

  7. SpringInAction--自动化装配Bean(显示装配之xml配置)

    Spring在配置时候有三种方案可选 1.在xml中进行显示配置 2.在java中进行显示配置 3.隐式的Bean发现机制和自动装配 今天学习的 第一种-- 在xml中进行显示配置 老规矩 先创建 C ...

  8. Spring实战(第4版)第2章 装配Bean

    文章目录 Spring实战(第4版)第2章 装配Bean 2.1 Spring配置的可选方案 2.2 自动化装配bean 2.2.1 创建可被发现的bean 2.2.2 为组件扫描的bean命名 2. ...

  9. java 装配_JAVA入门[13]-Spring装配Bean

    一.概要 Sping装配bean主要有三种装配机制: 在XML中进行显式配置. 在Java中进行显式配置. 隐式的bean发现机制和自动装配. 原则: 建议尽可能地使用自动配置的机制,显式配置越少越好 ...

  10. spring(2)装配Bean

    [0]README 0)本文部分文字描述转自:"Spring In Action(中/英文版)",旨在review  spring(2)装配Bean 的相关知识: 1)在sprin ...

最新文章

  1. Class中isAssignableFrom() 方法
  2. php基础知识【oop/mvc/orm/aop】
  3. Linux系统下GCC编译错误:“undefined reference to ‘sqrt‘”
  4. 服务器php 启动命令_禁止php运行服务器命令行函数的安全配置
  5. 点开那些优秀的硕博士们的朋友圈,他们都有这些特点!
  6. 软件开发人员怎样走好从技术到管理之路?
  7. StoreServ的ASIC架构师必须面向未来做出决断
  8. 信息学奥赛一本通C++语言——1069:乘方计算
  9. [No000083]文件与文件夹操作
  10. 认真测试直播软件,【转】如何测试直播软件
  11. 全开源的固定资产设备管理系统,JAVA项目源码
  12. 已知闭合曲线上各点的坐标,如何求曲线上的凹点
  13. 一元多次方程C语言,C语言解决多元多次方程.(19页)-原创力文档
  14. excel行数据不规则解析匹配
  15. 【面试经典】求解金矿问题(动态规划初级)
  16. 文件下载重命名(跨域)
  17. HBuilder如何在真机运行
  18. window下利用ip反查域名与利用域名查ip
  19. 基于simulink的模糊PID控制器
  20. 使用 139邮箱免费给任何移动手机发短信

热门文章

  1. 配置项setOption -- title
  2. 渗透常用SQL注入语句合集
  3. VC++开发数字图像处理系统2
  4. OGNL 过滤与投影
  5. error: #5: cannot open source input file “stm32f10x_lib.h“:
  6. 详细介绍四叉树 Quadtrees
  7. 关于jquery获取单选框value属性值为on的问题
  8. PHP扩展迁移为PHP7扩展兼容性问题记录
  9. [转载] Comet:基于 HTTP 长连接的“服务器推”技术
  10. Sass基础——Rem与Px的转换