1 spring如何通过组件扫描和自动装配实现自动化的配置
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如何通过组件扫描和自动装配实现自动化的配置的更多相关文章
- Spring装配bean--01组件扫描和自动装配
Spring容器负责创建应用程序中的bean并通过DI来协调这些对象之间的关系 Spring提供了三种主要的装配机制: 在XML中进行显式配置 在Java中进行显式配置 隐式的bean发现机制和自动装 ...
- Spring装配Bean之组件扫描和自动装配
Spring从两个角度来实现自动化装配: 组件扫描:Spring会自动发现应用上下文中所创建的bean. 自动装配:Spring自动满足bean之间的依赖. 案例:音响系统的组件.首先为CD创建Com ...
- Spring学习03(Bean的自动装配)
6.Bean的自动装配 6.1 自动装配说明 自动装配是使用spring满足bean依赖的一种方法 spring会在应用上下文中为某个bean寻找其依赖的bean. Spring中bean的三种装配机 ...
- spring框架学习(四)自动装配
set注入和构造注入有时在做配置时比较麻烦.所以框架为了提高开发效率,提供自动装配功能,简化配置.spring框架式默认不支持自动装配的,要想使用自动装配需要修改spring配置文件中<bean ...
- spring实战二之Bean的自动装配(非注解方式)
Bean的自动装配 自动装配(autowiring)有助于减少甚至消除配置<property>元素和<constructor-arg>元素,让Spring自动识别如何装配Bea ...
- 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 ...
- spring实战四之Bean的自动装配(注解方式)
使用注解装配: 从spring2.5开始,Spring启用了使用注解自动装配Bean的属性,使用注解方式自动装配与在XML中使用 autowire 属性自动装配并没有太大区别,但是使用注解方式允许更细 ...
- Spring - bean的autowire属性(自动装配)
当我们要往一个bean的某个属性里注入另外一个bean,我们会使用<property> + <ref/>标签的形式.但是对于大型项目,假设有一个bean A被多个bean引用注 ...
- Spring中的applicationContext.xml实现自动装配
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...
随机推荐
- Python3基础 交换两个变量的值
Python : 3.7.3 OS : Ubuntu 18.04.2 LTS IDE : pycharm-community-2019.1.3 ...
- training 2
Average Precision (AP) @[ IoU=0.75 | area= all | maxDets=100 ] = 0.136 Average Precision (AP) @[ IoU ...
- 全面系统Python3入门+进阶-1-1 导学
python特点 结束
- Qt编写气体安全管理系统21-探测器管理
一.前言 探测器在整个系统中是最核心的关键的硬件,终端节点硬件,安装有探测芯片装置,负责探测前端对应气体浓度,并记录值,等待控制器轮训数据回复,控制器信息表也是字段最多的,要存储位号.控制器名称.探测 ...
- python flask框架学习(二)——第一个flask程序
第一个flask程序 学习自:知了课堂Python Flask框架——全栈开发 1.用pycharm新建一个flask项目 2.运行程序 from flask import Flask # 创建一个F ...
- REDIS类和方法说明
package zhengxin.core; import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPool; imp ...
- 线性回归:boston房价
from sklearn.linear_model import LinearRegression,Lasso,Ridge from sklearn.datasets import load_bost ...
- bootstrap模态框怎么传递参数
bootstrap参数传递可以用 data-参数名 <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml&qu ...
- 【转】do...while(0)的妙用
前言 今天无意中看到这个标题,因为好奇就点进去了,不错,又学习啦... 具体内容: 1. do...while(0)消除goto语句: 2 宏定义中的do...while(0): 参考 1. 原链接_ ...
- 【Leetcode_easy】925. Long Pressed Name
problem 925. Long Pressed Name solution1: class Solution { public: bool isLongPressedName(string nam ...