Spring介绍及其优缺点(转载)

Spring框架是由于软件开发的复杂性而创建的。Spring使用的是基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅仅限于服务器端的开发。从简单性、可测试性和松耦合性角度而言,绝大部分Java应用都可以从Spring中受益。 1.目的:解决企业应用开发的复杂性 2.功能:使用基本的JavaBean代替EJB,并提供了更多的企业应用功能 3.范围:任何Java应用 Spring是一个轻量级控制反转(IoC)和面向切面(AOP)的容器框架

1.什么是Spring?

Spring是一个分层的JavaSE/EE full-stack(一站式)轻量级开源框架. Spring为不同的层都提供的企业级解决方案: web层:spring mvc service层:spring dao层:JDBCTemplate、Spring data jpa(Java Persistence API) Spring的核心思想是IOC(控制反转)和AOP(面向切面编程)

2.为什么要用Spring?

1.方便解耦,简化开发(高内聚低耦合) Spring就是一个大工厂(容器),用于创建对象(bean)和维护对象间的依赖关系. 2.AOP编程的支持 Spring提供面向切面编程,可以方便的实现对程序进行权限拦截、运行监控等功能. 声明式事务的支持,只需要通过配置就可以完成对事务的管理,而且无需手动编程. 3.方便程序的测试 Spring对Junit4支持,可以通过注解方便的测试Spring程序. 4.方便集成各种的优秀框架 5.降低JavaEE API的使用难度 Spring 对JavaEE开发中非常难用的一些API,都提供了封装,使用这些API应用难度大大降低.

3.Spring的优点

1.降低了组件之间的耦合性,实现了软件各层之间的解耦. 2.可以使用容器提供的众多服务,如事务管理,消息服务等. 3.容器提供单利模式支持. 4.容器提供了AOP技术,利用它可以很容易实现的一些拦截,如权限拦截,运行期监控等. 5.容器提供了AOP技术,利用它可以很容易实现运行拦截,如权限拦截,运行期监控等. 6.spring对于主流的应用框架提供了很好的支持,例如mybatis等. 7.spring属于低入侵设计 8.独立各种应用服务器 9.spring的DI机制减低了业务对象替换的复杂性. 10.spring的高开放性,并不强制应用于完全依赖于它,开发者可以自由选择spring的部分或者全部.

4.Spring的缺点

使用了大量的反射机制,反射机制非常占用内存。

经验分享 程序员 微信小程序 职场和发展