一,在配置文件中配置组件扫描
<?xml 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"> <!-- bean definitions here -->
<!-- 配置组件扫描,指定需要ioc注解的包 -->
<context:component-scan base-package="com.cws.spring.demo1"></context:component-scan>
</beans>
二,在类上添加注解
@Component(value=" 指定id名")也就是<bean id="指定id名" class="包">
@value("值")可以在set方法上面注解也可以直接在变量上注解
@value("李世民")
private String name;
也就是与下面在set方法上注解一样
package com.cws.spring.demo1;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
@Component(value="userdao")
public class UserDaoImpl {
private String name;
public String getName() {
return name;
}
@Value("李世民")
public void setName(String name) {
this.name = name;
}
public void save() {
System.out.println("执行了save方法"+name);
}
}
三.调用实例
@Test
public void test() {
//新建工厂,获取配置文件
ApplicationContext applicationContext=new ClassPathXmlApplicationContext("applicationContext.xml");
//获取需要调用的bean
UserDaoImpl userService=(UserDaoImpl) applicationContext.getBean("userdao");
userService.save();
}
}