不使用Spring中的xml进行配置,全权交给Java进行处理
JavaConfig是Spring的一个子项目,在Spring4之后,JavaConfig变成了核心功能
-
编写实体类
//这里的这个注解的意思是将这个类注册到容器中,被Spring接管 @Component public class User {private String name;public String getName() {return name;}@Value("123")public void setName(String name) {this.name = name;}@Overridepublic String toString() {return "User{" +"name='" + name + '\'' +'}';} } -
编写JavaConfig配置类
//这个也会被Spring容器托管,注册到容器中,因为这个本来就是一个@Component @Configuration //代表这是一个配置类,就和之前的xml是一样的 @ComponentScan("com.lrm") @Import(Config2.class) //引入另一个配置类 public class MyConfig {//注册一个bean,方法名相当于bean标签中的id,返回值相当于bean标签中的class@Beanpublic User getUser(){return new User(); //返回要注入到的bean对象} } -
编写测试类
public class MyTest {public static void main(String[] args) {//如果完全使用了配置类的方法去做,就只能通过AnnotationConfig上下文来获取容器,通过配置类的class对象加载ApplicationContext context = new AnnotationConfigApplicationContext(MyConfig.class);User getUser = (User) context.getBean("getUser");System.out.println(getUser.getName());} }
这种纯java的配置方式在spring boot中随处可见