Spring 是分层的 full-stack(全栈) 轻量级开源框架,以 IoC 和 AOP 为内核,提供了展示层 SpringMVC 和业务层事务管理等众多的企业级应⽤技术,还能整合开源世界众多著名的第三⽅框架和类库,已经成为使⽤最多的 Java EE 企业应⽤开源框架spring
Spring 官⽅⽹址:http://spring.io/数据库
咱们常常说的 Spring 其实指的是Spring Framework(spring 框架)编程
Rod Johnson(spring之⽗)设计模式
整个 Spring 优点,传达出⼀个信号,Spring 是⼀个综合性,且有很强的思想性框架,每学习⼀天,就能体会到它的⼀些优点
经过Spring的AOP功能,⽅便进⾏⾯向切⾯的编程,许多不容易⽤传统OOP实现的功能能够经过AOP轻松应付框架
@Transactional
能够将咱们从单调烦闷的事务管理代码中解脱出来,经过声明式⽅式灵活的进⾏事务的管理,提⾼开发效率和质量单元测试
能够⽤⾮容器依赖的编程⽅式进⾏⼏乎全部的测试⼯做,测试再也不是昂贵的操做,⽽是随⼿可作的事情学习
Spring能够下降各类框架的使⽤难度,提供了对各类优秀框架(Struts、Hibernate、Hessian、Quartz
等)的直接⽀持测试
Spring对JavaEE API(如JDBC、JavaMail、远程调⽤
等)进⾏了薄薄的封装层,使这些API的使⽤难度⼤为下降编码
Spring的源代码设计精妙、结构清晰、匠⼼独⽤,到处体现着⼤师对Java设计模式灵活运⽤以及对Java技术的⾼深造诣。它的源代码⽆意是Java技术的最佳实践的范例spa
Spring是⼀个分层⾮常清晰而且依赖关系、职责定位⾮常明确的轻量级框架,主要包括⼏个⼤模块:`数据处理模块、Web模块、AOP(Aspect Oriented Programming)/Aspects模块、Core Container模块
和 Test 模块`,以下图所示,Spring依靠这些基本模块,实现了⼀个令⼈愉悦的融合了现有解决⽅案的零侵⼊的轻量级框架