Spring简介
Spring丰富的功能的底层都依赖于它的两个核心特性:
1.依赖注入(dependency injection, DI):
每个对象负责管理与自己协作的对象(即它所依赖的对象)的引用,这会导致高度耦合和难以测试的代码。
解决办法:依赖注入,把对象的创建和管理交给第三方组件。
2.面向切面编程(aspect-oriented programming, AOP):
Spring所做的就是把这些业务方法使用少量的XML代码进行声明,从而达到分离的目的,
然后供各个核心业务使用(核心业务没有显示的调用,不知道它的存在)。
Spring模块:
1)Spring核心容器:管理bean和应用上下文,并提供一些企业服务。
2)AOP模块:提供面向切面的支持
3)Spring的DAO模块、JDBC模块、ORM模块:抽象了样板式代码,提供事务管理服务
4)Web和远程调用模块:自带强大的MVC框架,有助于在Web层提升应用的松耦合水平。
提供了多种与其他应用交互的远程调用方案。