1、基于POJO的轻量级和最小侵入性编程 2、通过依赖注入和面向接口松耦合 3、基于切面和惯性进行声明式编程 4、通过切面和模板减少样板式代码
打开我们任意一个Spring项目,可以看到里面有关Spring的包有很多
它们都是什么意思,负责哪些功能呢?将其分成模块,让我们来看一看