
Spring核心技术
文章平均质量分 85
该系列描述了Spring核心技术的一些基本原理、配置信息、Spring的生命周期以及Spring的核心概念。本系列为Spring官方文档的翻译,若有不足之处,可以去官网查看英文原文
EthanPark
中科大硕士. 擅长领域高并发企业级应用性能优化。喜爱钻研源码。业余参与国外Spring以及Servlet,JDBC等Spec的翻译。
展开
-
Spring核心技术(一)——IoC容器和Bean简介
IoC容器和Bean简介这章包括了Spring框架对于IoC规则的实现。Ioc也同DI(依赖注入)。而对象是通过构造函数,工厂方法,或者一些Set方法来定义对象之间的依赖的。容器在创建这些Bean对象的时候同时就会注入这些依赖。这个过程是根本上的反转了,不再由Bean本身来控制实例化和定位依赖,而是通过服务定位来控制这个过程,也是IoC(控制反转)的由来。org.springframew翻译 2016-05-06 10:41:05 · 6700 阅读 · 5 评论 -
Spring核心技术(二)——Spring的依赖及其注入
本文将继续前文,描述Spring IoC中的依赖处理。一般的企业应用也不会只有一个对象(或者是Spring Bean)。甚至最简单的应用都要有一些对象来协同工作来让终端用户看到一个完整的应用。下一部分将解释开发者从单独的定义Bean,到让这些对象在一个应用中协同工作。依赖注入依赖注入是一个让对象只通过构造参数,工厂方法的参数或者配置的属性来定义他们的依赖。这些依赖也是对象所需要协同工作的对象。容翻译 2016-05-11 11:04:56 · 9247 阅读 · 7 评论 -
Spring核心技术(三)——Spring的依赖及其注入(续)
本文将继续前文,针对依赖注入的细节进行描述依赖注入细节如前文所述,开发者可以通过定义Bean的依赖的来引用其他的Bean或者是一些值。Spring基于XML的配置元数据支持一些子元素<property/>以及<constructor-arg/>来达到这一目的。内在值类型(Java Primitives类型,字符串等)元素<property/>有value属性来以易读的形式配置一个属性或者构造参数。S翻译 2016-05-16 12:20:00 · 10952 阅读 · 2 评论 -
Spring核心技术(四)——Spring的依赖及其注入(续二)
前面两篇文章描述了IoC容器中依赖的概念,包括依赖注入以及注入细节配置。本文将继续描述玩全部的依赖信息。使用 depends-on如果一个Bean是另一个Bean的依赖的话,通常来说这个Bean也就是另一个Bean的属性之一。多数情况下,开发者可以在配置XML元数据的时候使用<ref/>标签。然而,有时Bean之间的依赖关系不是直接关联的。比如:需要调用类的静态实例化器来出发,类似数据库驱动注册。d翻译 2016-05-18 16:45:23 · 11037 阅读 · 2 评论 -
Spring核心技术(五)——Spring中Bean的作用域
前文概述了Spring的容器,Bean,以及依赖的一些信息,本文将描述一下Bean的作用域Bean的作用域当开发者定义Bean的时候,同时也会定义了具体如何创建Bean实例的步骤。这些步骤是很重要的,因为只有通过这些配置,开发者才能创建实例对象。开发者不仅可以控制多种多样的依赖到Bean之中,也可以配置Bean的作用域。这种方法是非常强大而且弹性也非常好,开发者可以通过配置来指定对象的作用域,而不用翻译 2016-05-22 18:23:58 · 20967 阅读 · 1 评论 -
Spring核心技术(六)——Spring中Bean的生命周期
前文已经描述了Bean的作用域,本文将描述Bean的一些生命周期作用,配置还有Bean的继承。定制Bean生命周期回调开发者通过实现Spring的InitializeingBean和DisposableBean接口,就可以让容器来管理Bean的生命周期。容器会调用afterPropertiesSet()前和destroy()后才会允许Bean在初始化和销毁Bean的时候执行一些操作。 JSR-2翻译 2016-05-29 18:44:18 · 28773 阅读 · 4 评论 -
Spring核心技术(七)——Spring容器的扩展
本文将讨论如何关于在Spring生命周期中扩展Spring中的Bean功能。容器的扩展通常来说,开发者不需要通过继承ApplicationContext来实现自己的子类扩展功能。但是Spring IoC容器确实可以通过实现接口来增加一些功能。下面将描述一下这些接口。通过BeanPostProcessor定义BeanBeanPostProcessor接口定义了一些回调方法,开发者可以通过实现来自己的实翻译 2016-06-07 10:51:05 · 7164 阅读 · 0 评论 -
Spring核心技术(八)——Spring自动装载的注解
本文针对自动装载的一些注解进行描述。包括@Required,@Autowired,@Resource等翻译 2016-06-24 16:31:52 · 9606 阅读 · 7 评论 -
Spring核心技术(九)——Spring管理的组件和Classpath扫描
本文主要描述了Spring所管理的组件,Spring是如何通过classpath的扫描来自动将组件注册为Bean的以及Spring自动注册所涉及的一些相关知识翻译 2016-07-10 21:36:30 · 5181 阅读 · 0 评论 -
Spring核心技术(十)——JSR-330标准注解
从Spring 3.0开始,Spring开始支持JSR-330标准的注解(依赖注入)。这些注解和Spring注解扫描的方式是一直的,开发者只需要在classpath中配置相关的jar包即可。 如果开发者使用Maven来管理项目的话,javax.injectartifact在Maven仓库中是可用的(http://repo1.maven.org/maven2/javax/inject/javax.翻译 2016-07-11 12:32:23 · 9931 阅读 · 0 评论 -
Spring核心技术(十一)——基于Java的容器配置(一)
本文概述了如何通过使用Java而非XML来配置Spring容器。其中包括Bean的构建,@Configuration注解,@Bean注解等等的用法翻译 2016-07-27 23:06:19 · 2843 阅读 · 0 评论 -
Spring核心技术(十二)——基于Java的容器配置(二)
@Configuration注解是一个类级别的注解,表明该对象是用来指定Bean的定义的。@Configuration注解的类通过@Bean注解的方法来声明Bean。通过调用注解了@Bean方法的返回的Bean可以用来构建Bean之间的相互依赖关系,可以通过前文来了解其基本概念。注入inter-bean依赖当@Bean方法依赖于其他的Bean的时候,可以通过在另一翻译 2016-07-30 23:46:45 · 2546 阅读 · 0 评论 -
Spring核心技术(十三)——环境的抽象
本章将描述一下Spring中针对环境的抽象。Environment是一个集成到容器之中的特殊抽象,它针对应用的环境建立了两个关键的概念:profile和properties.profile是命名好的,其中包含了多个Bean的定义的一个逻辑集合,只有当指定的profile被激活的时候,其中的Bean才会激活。无论是通过XML定义的还是通过注解解析的Bean都可以配置到profile之中。而Enviro翻译 2016-08-16 13:35:46 · 3058 阅读 · 2 评论 -
Spring核心技术(十四)——ApplicationContext的额外功能
在前文的介绍中我们知道,org.springframework.beans.factory包提供了一些基本的功能来管理和控制Bean,甚至通过编程的方式来实现。org.springframework.context包添加了ApplicationContext接口,ApplicationContext接口扩展了BeanFactory接口。ApplicationContext接口扩展了其他的接口来以一种翻译 2016-09-06 00:15:33 · 3340 阅读 · 4 评论 -
Spring核心技术(十五)——BeanFactory
BeanFactory是Spring IoC功能的潜在基础,但是现在BeanFactory一般仅仅用于直接集成第三方的框架,对于大多数的Spring用户来说,BeanFactory已经算是一个历史了。BeanFactory以及其相关的接口,包括BeanFactoryAware,InitializingBean,DisposableBean,出于跟大量第三方框架兼容的问题,仍然存在。因为很多时候,第三翻译 2016-09-26 23:02:35 · 1817 阅读 · 2 评论