Spring(一)--简介

一.概述(什么是spring):

  Spring是分层的Java SE/EE应用full-stack(一站式)轻量级开源框架。他解决的是业务逻辑层和其他各层的松耦合问题,将面向接口的编程思想贯穿整个系统应用。以IOC(控制反转)和AOP(面向切面编程)为内核,提供了展现层Spring MVC和持久层Spring JDBC以及业务层事务管理等众多的企业级应用技术,还整合了开源世界众多著名第三方框架和类库。

二.优势(特点):

  *方便解耦,简化开发。通过Spring提供的IOC容器,可以将对象间的依赖关系交由Spring进行控制,避免硬编码所造成的过度程序耦合;

  *AOP编程的支持。方便进行面向切面编程,许多不容易用传统OOP实现的功能可以通过AOP轻松应付;

  *声明式事务的支持。可以将我们从单调烦闷的事务管理代码中解脱出来,通过声明式方式灵活的进行事务的管理,提高开发效率和质量。

  *方便程序的测试。可以用非容器的依赖的编程方式进行几乎所有的测试工作;

  *方便集成各种优秀框架。Spring可以降低各种框架的使用难度,提供了各种优秀框架的直接支持;

  *降低JavaEE API(如:JDBA、JavaMail、远程调用等)进行了薄薄的封装层,使这些API的使用难度大大降低;

  *Java源码是经典学习范例。设计巧妙、结构清晰、匠心独用,处处体现着大师对Java设计模式灵活应用以及Java技术的高深造诣。是Java技术的最佳实践范例。

三.好处(优点):

  *低侵入式设计,代码污染极低;

  *独立于各种应用服务器,基于Spring框架的应用,真正实现Write Once,Run Anywhere的承诺;

  *Spring的DI机制降低了业务对象替换的复杂性,提高了组件之间解耦;

  *Spring的AOP支持允许将一些通用任务(安全、事务、日志等)进行集中式管理,从而提供了更好的复用;

  *Spring的ORM和DAO提供了与第三方持久层框架的良好整合,并简化了底层的数据库访问;

  *Spring并不强制应用完全依赖于Spring;

  *Spring主要目的是使JavaEE易用和促进好编程习惯。

猜你喜欢

转载自www.cnblogs.com/wujialiang/p/12951919.html