Spring是如何简化java开发的

发布时间:2019-11-21 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了Spring是如何简化java开发的脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

SPRing是如何简化java开发的

Spring最根本的使命就是为了简化java开发。为了降低java开发的复杂性,Spring采取了以下的4中策略:

  1. 基于POJO的轻量性和最小侵入性编程

  2. 通过依赖注入和面向接口实现松耦合

  3. 基于切面和惯例进行声明式编程

  4. 通过切面和模板减少样板式代码

POJO的轻量性和最小侵入性编程体现在哪里?

POJO类就是一个类,包含了一堆属性,还有get、set方法。Spring想要的就是这样简单。你为了使用Spring,不需要修改原有的POJO类。不需要像EJB那样,继承一些必须要继承和实现的方法。其实,这就是框架对你代码的侵入。造成的结果就是,你的代码与框架紧紧地耦合在一起。那到底是谁服务谁呢?(框架服务你还是你服务框架)

Spring竭力避免因自身的API而弄乱你的代码。Spring不会强迫你实现Spring规范的借口或继承Spring规范的类。最坏的情况是,你的代码中加有Spring的注解。

依赖注入

依赖注入就是为了解耦。耦合具有两面性:一方面,紧密耦合的代码难以测试,难以复用,难以理解。另一方面耦合又是必须的,完全的耦合那就根本成不了一个系统。
对于依赖注入是怎么解耦的,可以这样比喻。以前你的代码里需要一把斧子,那你就new出一把斧子(注意:这里已经发生耦合)。现在有了依赖注入,你需要斧子的时候,Spring就会提供给你,相当于有一个斧子工厂一样。

应用切面

AOP允许你把遍布应用各处的功能分离出来形成可重用的组件。这些功能包括日志、安全检查、事务管理等。就拿日志来说,如果不适用AOP,你可能把日志功能分散的写到各个业务逻辑类中(一改全都需要改),或者把日志功能抽象成一个公共的类。但系统中还是存在很多一样的方法调用。这个时候如果使用AOP就可以做到最小的侵入性。

public class LOGUtil{     public void doITBefore(){         System.out.println("do it before");     }     public void doItAfter(){         System.out.println("do it after");     } }  public class Business{     private LogUtil log;     public Business(LogUtil log){         this.log = log;     }     public void do(){         //日志         log.doItBefore();         //业务逻辑---开始         System.out.println("do it");         //业务逻辑---结束         //日志         log.doItAfter();     } }

业务类Business需要知道日志类LogUtil的存在吗?使用AOP,在Spring的配置文件中进行配置就可以了,Business类不需要做任何的改变

使用模板消除样式代码

最常见的模板代码就是jdbc的那些代码,开头和结尾基本上都相同,但与业务逻辑毫不相关,还不能不写。使用模板就是可以消除这些样式代码,使精力集中在业务逻辑的处理上。

脚本宝典总结

以上是脚本宝典为你收集整理的Spring是如何简化java开发的全部内容,希望文章能够帮你解决Spring是如何简化java开发的所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。