实体类:
package com.huang.pojo; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; @Component//加上这个类说明已经被spring接管了,注册到容器中 public class User { @Value("sss") private String name; private int id; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getId() { return id; } public void setId(int id) { this.id = id; } @Override public String toString() { return "User{" + "name='" + name + ''' + ", id=" + id + '}'; } }
建一个配置类:
import org.springframework.context.annotation.import; //加上该注解变成配置类 @Configuration//这个也会被spring托管,注册到容器中,以为它本身就是个Component //Configuration代表这是一个配置类,就是和我们之前的beans.xml一样 @ComponentScan("com.huang.pojo")//扫描注册下的包 //引入MyConfig2类 @import(MyConfig2.class) public class MyConfig {//配置类、 //相当于注册一个bean //这个方法的名字就相当于bean标签的id属性 //这个方法的返回值就相当于bean的class @Bean public User getUser(){ return new User(); } }
测试;
public class myTest { @Test public void test(){ //如果完全使用配置类的方式去使用,我们只能通过AnnotationConfig上下文来获取容器, // 通过配置类的class对象加载 AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(MyConfig.class); User getUser = (User) context.getBean("getUser"); System.out.println(getUser.getName()); } }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)