【Spring】这次,连xml文件也不用啦!完全使用注解开发~

17 阅读1分钟

记录跟着狂神学Spring的历程(第15集)~

1. new一个配置类

  • @Configuration代表了这是一个配置类,相当于之前的xml文件。这个类的底层实现原理包含了@Component,所以这个类也会被Spring容器托管。
  • @ComponentScan("com.pojo") 等价于<context:component-scan base-package="com.pojo"/>,指定要扫描的包,这个包下的注解就会生效。
  • @Bean 等价于原来xml文件中的bean标签。这个方法的名字相当于bean的id属性,返回值相当于bean标签的class属性。
  • @Import 相当于xml的import标签,引入另一个配置类里的所有bean
@Configuration
@ComponentScan("com.pojo")
@Import(MyConfig2.class)
public class MyConfig{
  
  @Bean 
  public User getUser(){
    return new User();
  }
}

2. 测试

如果完全使用了注解的方式去做,就只能通过AnnotationConfigApplicationContext上下文来获取容器。

@Test
public void test(){
    ApplicationContext context = 
                new AnnotationConfigApplicationContext(MyConfig.class) //配置类的类名
    User user = (User)context.getBean("getUser");
    System.out.println(user.getName());
}

这种纯Java的配置模式,在SpringBoot中随处可见。

参考视频:15、使用JavaConfig实现配置_哔哩哔哩_bilibili