使用Java的方式配置Spring:
我们现在要完全不使用Spring的xml配置了,全权交给Java来做;
JavaConfig是Spring的子项目,在Spring4之后,它称为了一个核心功能;
代码案例:User
//这个注解的意思,就是说这个类被Spring管理了,注册到容器中 @Component public class User { //属性注入值 @Value("张三") private String name; public String getName() { return name; } public void setName(String name) { this.name = name; } }
代码案例:MyConfig配置类
//也会被Spring容器管理,注册到容器中,因为它本来就是一个Component //@Configuration:代表这是一个配置类,类似于beans.xml; @Configuration @ComponentScan("com.ljxdemo.pojo") public class MyConfig { //注册一个bean,就相当于我们之前写的一个bean标签; //这个方法的名字,就相当于bean标签的id属性; //这个方法的返回值,就相当于bean标签的class属性; @Bean public User getUser(){ return new User() ; } }
代码案例:MyConfig2:多个配置类
//多个beans.xml,需要import注解 @Configuration @ComponentScan("com.ljxdemo.pojo") @Import(MyConfig2.class) public class MyConfig2 { //注册一个bean,就相当于我们之前写的一个bean标签; //这个方法的名字,就相当于bean标签的id属性; //这个方法的返回值,就相当于bean标签的class属性; @Bean public User getUser(){ return new User() ; } }
代码案例:测试类
public class MyTest { @Test public void test(){ //如果完全使用了配置类方式: //我们就只能通过AnnotationConfig上下文来获取容器,通过配置类的class对象加载! ApplicationContext context = new AnnotationConfigApplicationContext(MyConfig.class); User getUser = (User) context.getBean("getUser"); System.out.println(getUser); } }
总结:
这种纯Java的配置方式,在SpringBoot中随处可见;