1 首先将spring依赖的包全部导入

2 建立测试接口

public interface CompactDisc {

    void play();
}

3 具体的类实现接口

import org.springframework.stereotype.Component;

import morningstar.spring.CompactDisc;

/*
* @Component 注解用在类上表明该类会作为组件类使用,并且告知spring要为这个类创建bean*/
@Component
public class Stgpepers implements CompactDisc { private String title="sgt.peper's lnnely hearts club band";
private String artist="the beatles";
@Override
public void play() {
// TODO Auto-generated method stub
System.out.println("playing "+title+" by "+artist);
} }

4 创建配置类

import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration; import morningstar.spring.entity.Stgpepers; @Configuration
@ComponentScan(basePackages = {"morningstar.spring.entity"})
public class CDPlayerConfig { /*
*@Configuration:
*@ComponentScan:在spring中启用组件扫描 */
}

5 建立测试:

//SpringJUnit4ClassRunner:测试开始的时候就创建spring的应用上下文
@RunWith(SpringJUnit4ClassRunner.class)
//@ContextConfiguration注解告诉spring在CDPlayerConfig类中加载配置类
@ContextConfiguration(classes =CDPlayerConfig.class )
public class CDPlayerTest { @Autowired
private CompactDisc disc; @Rule
public final StandardErrorStreamLog log=new StandardErrorStreamLog();
@Autowired
private MediaPlayer player; @Test
public void cdShouldNotBeNull()
{
assertNotNull(disc);
System.out.println("success");
} @Test
public void player()
{
player.play();
}
}

6 结果:

测试通过

1 spring如何通过组件扫描和自动装配实现自动化的配置的更多相关文章

  1. Spring装配bean--01组件扫描和自动装配

    Spring容器负责创建应用程序中的bean并通过DI来协调这些对象之间的关系 Spring提供了三种主要的装配机制: 在XML中进行显式配置 在Java中进行显式配置 隐式的bean发现机制和自动装 ...

  2. Spring装配Bean之组件扫描和自动装配

    Spring从两个角度来实现自动化装配: 组件扫描:Spring会自动发现应用上下文中所创建的bean. 自动装配:Spring自动满足bean之间的依赖. 案例:音响系统的组件.首先为CD创建Com ...

  3. Spring学习03(Bean的自动装配)

    6.Bean的自动装配 6.1 自动装配说明 自动装配是使用spring满足bean依赖的一种方法 spring会在应用上下文中为某个bean寻找其依赖的bean. Spring中bean的三种装配机 ...

  4. spring框架学习(四)自动装配

    set注入和构造注入有时在做配置时比较麻烦.所以框架为了提高开发效率,提供自动装配功能,简化配置.spring框架式默认不支持自动装配的,要想使用自动装配需要修改spring配置文件中<bean ...

  5. spring实战二之Bean的自动装配(非注解方式)

    Bean的自动装配 自动装配(autowiring)有助于减少甚至消除配置<property>元素和<constructor-arg>元素,让Spring自动识别如何装配Bea ...

  6. IDEA02 利用Maven创建Web项目、为Web应用添加Spring框架支持、bean的创建于获取、利用注解配置Bean、自动装配Bean、MVC配置

    1 环境版本说明 Jdk : 1.8 Maven : 3.5 IDEA : 专业版 2017.2 2 环境准备 2.1 Maven安装及其配置 2.2 Tomcat安装及其配置 3 详细步骤 3.1 ...

  7. spring实战四之Bean的自动装配(注解方式)

    使用注解装配: 从spring2.5开始,Spring启用了使用注解自动装配Bean的属性,使用注解方式自动装配与在XML中使用 autowire 属性自动装配并没有太大区别,但是使用注解方式允许更细 ...

  8. Spring - bean的autowire属性(自动装配)

    当我们要往一个bean的某个属性里注入另外一个bean,我们会使用<property> + <ref/>标签的形式.但是对于大型项目,假设有一个bean A被多个bean引用注 ...

  9. Spring中的applicationContext.xml实现自动装配

    <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...

随机推荐

  1. Python3基础 交换两个变量的值

             Python : 3.7.3          OS : Ubuntu 18.04.2 LTS         IDE : pycharm-community-2019.1.3    ...

  2. training 2

    Average Precision (AP) @[ IoU=0.75 | area= all | maxDets=100 ] = 0.136 Average Precision (AP) @[ IoU ...

  3. 全面系统Python3入门+进阶-1-1 导学

    python特点 结束

  4. Qt编写气体安全管理系统21-探测器管理

    一.前言 探测器在整个系统中是最核心的关键的硬件,终端节点硬件,安装有探测芯片装置,负责探测前端对应气体浓度,并记录值,等待控制器轮训数据回复,控制器信息表也是字段最多的,要存储位号.控制器名称.探测 ...

  5. python flask框架学习(二)——第一个flask程序

    第一个flask程序 学习自:知了课堂Python Flask框架——全栈开发 1.用pycharm新建一个flask项目 2.运行程序 from flask import Flask # 创建一个F ...

  6. REDIS类和方法说明

    package zhengxin.core;   import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPool; imp ...

  7. 线性回归:boston房价

    from sklearn.linear_model import LinearRegression,Lasso,Ridge from sklearn.datasets import load_bost ...

  8. bootstrap模态框怎么传递参数

    bootstrap参数传递可以用 data-参数名 <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml&qu ...

  9. 【转】do...while(0)的妙用

    前言 今天无意中看到这个标题,因为好奇就点进去了,不错,又学习啦... 具体内容: 1. do...while(0)消除goto语句: 2 宏定义中的do...while(0): 参考 1. 原链接_ ...

  10. 【Leetcode_easy】925. Long Pressed Name

    problem 925. Long Pressed Name solution1: class Solution { public: bool isLongPressedName(string nam ...