spring框架学习4:bean注解配置
2020-12-13 02:28
标签:需要 this alc 实现 new ext value color 因此 在上一篇中学习了如何使用spring来管理对象,但是再实际的开发中,再spring配置文件中配置bean元素是非常繁琐的,因此实际开发中使用注解来配置spring。具体操作如下: 在配置文件中,扫描实体类包: 使用注解配置对象,在类的头部使用注解@Component, 引用对象类型头部也需要添加@Component,对象中的引用类型,当有多个实现类时,需要写出使用的实现类是哪儿一个,@Autowired是按照类型装配,@Resource是先按照类型装配,在按照名称装配,@Qualifier指定要装配对象的id,使用注解时,默认的对象的id为类名首字母小写。 然后测试: spring框架学习4:bean注解配置 标签:需要 this alc 实现 new ext value color 因此 原文地址:https://www.cnblogs.com/Zs-book1/p/11039853.htmlxml 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.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">
context:component-scan base-package="com.zs.entity"/>
beans>
package com.zs.entity.impl;
import com.zs.entity.Cpu;
import com.zs.entity.Display;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
/**
* 创建e470电脑,电脑有显示器和Cpu
*/
@Component
public class E470 {
@Resource
@Qualifier(value = "lgDisplay")
private Display display;
@Autowired
private Cpu cpu;
/*电脑有自己的工作的方法*/
public void work(){
display.show();
cpu.calc();
}
/*生成get和set方法*/
public Display getDisplay() {
return display;
}
public void setDisplay(Display display) {
this.display = display;
}
public Cpu getCpu() {
return cpu;
}
public void setCpu(Cpu cpu) {
this.cpu = cpu;
}
}
import com.zs.entity.impl.E470;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class SpringTest {
@Test
public void test1() {
ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
System.out.println("工厂类初始化成功");
E470 e470 = (E470) context.getBean("e470");
e470.work();
}
}