我们现在要完全不使用Spring的xml配置了,全权交给Java来做
JavaConfig是Spring的一个子项目,在Spring4之后,它成为了一个核心功能!
需要使用AnnotationConfigApplicationContext()加载配置类获取容器
ApplicationContext context =new AnnotationConfigApplicationContext(MyConfig.class)
package com.saxon.Congfig;
import com.saxon.pojo.User;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
//这个也会被spring容器托管,也会被注册到容器中,因为他本来就是一个@Component
//@Configuration代表是一个配置类和Spring.xml一样
@Configuration
@ComponentScan("com.saxon") //扫描包
public class MyConfig {
/*
注册一个bean 相当于bean标签
id相当于方法名 class相当于返回值
return 就是返回要注入bean的对象
*/
@Bean
public User user(){
return new User();
}
}
@Component //说明这个类被spring接管了,注册到了容器中
public class User {
@Value("zhangsan") //属性注入值
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public User(String name) {
this.name = name;
}
@Override
public String toString() {
return "User{" +
"name=‘" + name + ‘\‘‘ +
‘}‘;
}
public User() {
}
}
public class MyTest {
@Test
public void test(){
//使用配置类加载获取spring容器
ApplicationContext context =
new AnnotationConfigApplicationContext(MyConfig.class);
User getUser = context.getBean("user", User.class);
System.out.println(getUser);
}
}
原文:https://www.cnblogs.com/saxonsong/p/14929666.html