实现步骤
- 加入依赖
- 创建类,在类中去加入注解
- 创建spring的配置文件
- 在文件中声明组件扫描器的标签,指名注解在你项目中的位置。
- 使用注解创建对象,创建容器
ApplicationContext
创建类
ba01.Student.java
package com.chentianyu.ba01;import org.springframework.stereotype.Component;//得到Student这一类的对象得用@Component/*** @Component: 创建对象的,等同于<bean>的功能* 属性: value 就是对象的名称,也就是<bean id>;所以value的值是唯一的;创建对象在整个spring容器中就一个* 位置: 在类的上面* @Component(value = "myStudent")等同于<bean id="myStudent" class="com.chentianyu.ba01.Student" />*/@Component(value = "myStudent")public class Student {private String name;private Integer age;public String getName() {return name;}public void setName(String name) {this.name = name;}public Integer getAge() {return age;}public void setAge(Integer age) {this.age = age;}@Overridepublic String toString() {return "Student{" +"name='" + name + '\'' +", age=" + age +'}';}}
得需要配置文件resources
创建spring的配置文件
resources > applicationContext.xml
<?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/beanshttp://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/contexthttps://www.springframework.org/schema/context/spring-context.xsd"><!--声明组件扫描器(component-scan),组件就是java对象base-package: 指定你的注解在你的项目中的包名component-scan工作方式: Spring会扫描遍历base-package指定的包,把包中和子包中所有类,找到类中的注解,按照注解的功能创建对象或给属性赋值。加入了component-scan标签, 配置文件的变化:1.加入一个新的约束文件: spring-context.xsd2.给这个新的约束文件起一个命名空间的名称(xmlns:context="http://www.springframework.org/schema/context")--><context:component-scan base-package="com.chentianyu.ba01" /></beans>
创建容器ApplicationContext
第一个测试类MyTest01
package com.chentianyu;
import com.chentianyu.ba01.Student;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class MyTest01 {
@Test
public void test01(){
String config = "applicationContext.xml";
ApplicationContext applicationContext = new ClassPathXmlApplicationContext(config);
//从容器中获取对象(需要id(value里的就是id))
Student student = (Student) applicationContext.getBean("myStudent");
System.out.println(student);
}
}
Student{name='null', age=null}
对象就有了
