zoukankan      html  css  js  c++  java
  • 思考:为什么要用Spring

    spring带来了什么?

    说到Spring肯定离不开它的两大特性AOP和IOC

    IOC:把我们的类上交,由Spring来进行统一的管理和配置,在需要使用的地方注入。好处是减少了各个类之间的相互依赖,依赖控制交给Spring管理。

    AOP:封装了jdk和cglib的动态代理,结合IOC提供了更方便的增强类的方法。

    没有Spring会怎么样?

    想知道为什么使用,最好的办法就是想想如果没有会怎样,没有手机、没有电脑、没有操作系统……。没有Spring框架。

    如果没有Spring,我们不得不在使用每个类之前,实例化一个对象。当然我们可以用工厂方法来做这件事,就可以集中管理并且让调用者和被调用者之间的耦合更松散。于是需要大量的工厂类,并且在增加或改变接口实现的时候,还需要对工厂进行调整。而Spring就像一个大工厂一样,使用了大量的反射机制来生成需要实例的对象。

    除此之外Spring还带来了强大的代理,我们使用的每个注入的对象都是经过代理的增强对象,同时可以使用aop包来定义一些与业务逻辑不相关的切面。增强功能模块的内聚,拆分功能模块和非业务模块。而AOP又是建立在IOP基础之上,因此如果没有Spring,功能模块和非功能模块混在一起,导致逻辑混乱不清晰。

    为什么要用Spring

    现在已经很清晰了,用Spring可以让各个模块耦合更松散,可以在业务逻辑之外进行增强代理,实现非业务功能。所以就算没了Spring,也会有类似的其他框架来实现这些目的,而现在Spring的生态比较大,社区又比较活跃,为什么不用呢?

  • 相关阅读:
    常用函数工具记录贴
    phpCAS::handleLogoutRequests()关于java端项目登出而php端项目检测不到的测试
    Cas服务器设置(java),java、php客户端配置
    android导入项目出现R文件不能生成
    Error executing aapt: Return code -1073741819
    网页在线播发视频 在线查看文档
    jeecg的cq查询方式
    威佐夫博弈
    HDU 1850 (尼姆博奕)
    HDU2149 (巴什博弈)
  • 原文地址:https://www.cnblogs.com/enhe/p/12141695.html
Copyright © 2011-2022 走看看