什么是Spring? 可以理解Spring就是一个工厂 一个很大的容器!
Spring出生的目的就是为了解决企业及应用开发的复杂性而诞生的轻量级的Java开源框架。
Spring带来了很多的好处:
第一:资源集中管理,实现了资源可配置和易管理。
第二: 降低了使用资源双方的依赖程度,也就是耦合度大大降低.
第三: 对于项目的代码入侵性小!
Spring框架中也使用了众多的设计模式 如:单例模式,工程模式,原型模式,代理模式 等等…
Spring的核心思想:IOC和DI
IOC也称为控制反转:也就是指将创建对象的权利交给了容器,在Spring中我们把创建对象的权利交给了工厂!
DI也称为依赖注入:也就指的是通过Spring的工厂在创建同时可以将某一个或者多个类的依赖的对象在工厂中注入值!
AOP编程的支持
Spring提供了面向切面编程,可以方便的实现对程序进行权限拦截,运行监控等功能,是基于动态代理实现的,通过代理袁原始类增加额外功能一次定义配合切点达到多次使用的效果
声明事物的支持
只需要通过XML配置或者注解的配置就可以完成对事物的管理
方便程序的测试
Spring对Junit4支持,可以通过注解的方便测试Spring程序
更好的与各种优秀框架集成
Spring不排除与各种优秀的开源框架做整合,内部提供了各种对优秀框架的集成(如:Mybatis,Quartz,Status等…)
降低了javaEE API的使用难度
Spring对JavaEE开发中非常难用的一些API (JDBC,JavaMail,远程调用等…)都提供了封装,是这些API应用难度大大的降低