Spring的进化史
1.1SPRING1.X时代
大量编写xml配置文件的时代,spring框架开发应用程序,每个xml中都会使用大量bean标签,来实现SPRING容器的IOC DI功能.不存在注解 @Resource @Autowired @Component @Service @Controller
1.2SPRING2.X时代
java出现了jdk1.5,新特性注解,反射等功能.SPRING随之推出了基于java5的注解功能的新特性,IOC容器的注解,使得扫描注解能够构造bean对象,@Component @Service @Controller @Repository DI注入 @Resource @Qualifier @Autowired.让在1.x时代编写大量的xml配置文件的工作减少了很多很多.
什么情况下使用注解:业务层使用注解(Controller Service)
什么情况下使用xml配置:引入的技术 redis,mysql,等使用xml配置
1.3SPRING3.X时代
基于java5的注解功能上,spring扩展了大量的功能注解,比如@Configuration @Bean @ComponentScan等等,他们可以让在2.x时代残留的那种xml配置,彻底的消失了,从xml配置完全转化成为代码注解的编写;
趋势:配置越来越简单
1.4SPRING4.X/5.X
都是在基于这个趋势,实现更多注解的扩展,让代码的功能变得更强,开发的效率变得更高,出现了很多组合注解,@RestController 条件注解@Conditional
springboot能够做到0 xml配置文件是springboot功劳吗?本质不是,spring就支持不需要配置文件xml了. Springboot就是在这样的发展环境中,在4.0spring基础上出现的新框架,在代码中实现了非常丰富的自动配置类.