zoukankan      html  css  js  c++  java
  • 认识Spring

    Spring最根本的使命是解决企业级应用开发的复杂性,即简化Java开发。
    Spring可以做很多事情,它为企业级开发提供给了丰富的功能,但是这些功能的底层都依赖于它的两个核心特性,也就是依赖注入(dependency injection,DI)和面向切面编程(aspect-oriented programming,AOP)。

    为了降低Java开发的复杂性,Spring采取了以下4种关键策略
    基于POJO的轻量级和最小侵入性编程;
    通过依赖注入和面向接口实现松耦合;
    基于切面和惯例进行声明式编程;
    通过切面和模板减少样板式代码。

    Spring框架的核心:IoC容器和AOP模块。通过IoC容器管理POJO对象以及他们之间的耦合关系;通过AOP以动态非侵入的方式增强服务。

    模块组成


    https://github.com/spring-projects/spring-framework

    IOC

    是一种思想,关于依赖注入与控制反转的关系:依赖注入则是实现控制反转思想的方法。

    发生了“主从换位”的变化。应用程序就变成被动的了,被动的等待IoC容器来创建并注入它所需要的资源了。
    IoC很好的体现了面向对象设计法则之一—— 好莱坞法则:“别找我们,我们找你”;即由IoC容器帮对象找相应的依赖对象并注入,而不是由对象主动去找。
    传统应用程序都是由我们在类内部主动创建依赖对象,从而导致类与类之间高耦合,难于测试;有了IoC容器后,把创建和查找依赖对象的控制权交给了容器,由容器进行注入组合对象,所以对象与对象之间是 松散耦合,这样也方便测试,利于功能复用,更重要的是使得程序的整个体系结构变得非常灵活。

    之前是consumer主动去new,变成consumer向IOC容器去要,然后由IOC容器注入依赖对象。

  • 相关阅读:
    Script to Create Benchmark Procs
    自定义数据类型修改
    需求管理工具试用 – CaliberRM
    标识值重复的原因示例
    Vmware vFabric Suite开始支持自动化部署与PostgreSQL
    在ubuntu上安装Oracle Java SDK
    详解数据中心基础设施的模块化建设
    Xcode 4 无证书真机调试 环境配置
    Calculate_and_Insert_Event_Intervals_in_SQL2005_Profiler
    浏览器工作原理
  • 原文地址:https://www.cnblogs.com/cashew/p/10721887.html
Copyright © 2011-2022 走看看