【译文】【学习】Spring 介绍

【目标读者】

  本教程是专为java编程人员设计的,用来帮助他们理解Spring 3框架以及基于它的应用。

【前置条件】

  在阅读教程之前你应该有一个比较好对java语言知识的理解

【系列教程】

  Introduction to spring framework

     Spring interview questions

  Dependency injection(ioc) in spring

  Spring hello world example in eclipse

  Spring java based configuaration

  Dependency injection via setter method in spring

  Dependency injection via constructor in spring

  Spring Bean scopes with examples

  Initializing collections in spring

  Beans Autowiring in spring

  Inheritance in Spring

  Spring ApplicationContext

  Spring lifetime callbacks

  BeanPostProcessors in Spring

  Annotation based Configuration in spring

  Spring AOP tutorial

 

【Spring介绍】

  Spring是一个开源框架,致力于解决企业级应用开发的复杂性。Spring一个主要的优点就是分层架构,允许你对Spring的组建进行选择性的使用,通知提供了一个内聚的框架来开发J2EE应用。

【特性】

  • 轻量级

    当谈及到大小和透明度时,spring是轻量级的。Spring基本的版本不超过1M。且其处理开销也是非常小的。

  • 控制反转

    依赖注入或者说是控制反转的基本概念,是指程序开发者不需要在自己创建对象,而是只要描述它如何能被创建就好。不需要在程序中直接连接组件和服务,而是在XML等配置文件中描述哪个服务用了那个组件。Spring IOC容器负责处理上述问题。

  • 面向切面

    Spring支持面向切面的编程。面向切面编程是一个编程范式,将一些次要的或者辅助的功能从主要业务逻辑中隔离出来。AOP是一个非常好的技术用来解决分离的横切关注点,那些可能面向对象很难解决的问题。

  • 容器

    Spring包含和管理生命周期,并且配置应用对象

  • MVC框架

    Spring自带MVC Web应用框架,构建在Spring核心功能之上。这个框架通过策略端口是高度可配置的,且可以支持多种View技术,例如JSP,Velocity,iText等。

  • 事物管理

    Spring提供了一个用于事务管理的通用抽象层。这允许开发者添加可插入的事物管理器,使得标定事物很容易,而不用处理底层问题。Spring事物支持不一定和J2EE环境绑定在一起。

  • JDBC异常处理

    Spring的JDBC异常抽象层提供了一个很好的异常层次,可以简化错误处理策略。Spring提供了Hibernate、JDO和iBatis最佳基础服务。

 

【架构】

  Spring是一个组织较好的架构,由7个模块组成。Spring框架的模块如下:

  • Spring AOP: Spring的一个关键组件是AOP框架,AOP在Spring中用于:

    为了提供声明式企业服务,特别地作为声明式企业服务的替代。最重要的一个企业级服务就是声明式事物管理,它是构建于Spring事物抽象。

    为了允许用户实现自定义切面,作为面向对象编程的补充。

  • Spring ORM: ORM包和数据库访问相关。他提供了一个集成层来集成当前流行的对象映射关系API,例如Hibernate等。
  • Spring Web: 为什么Spring Web模块是Spring的一部分,因为Web应用开发栈中包含Spring MVC
  • Spring DAO: Spring Data Acess Object支持主要是为了标准化使用类似JDBC技术的数据访问行为, 例如Hibernate, JDO等。
  • Spring Web MVC: 这个模块提供了Web应用的MVC实现
  • Spring Core: Spring框架最重要的组件,Core组件。这个组件提供了依赖注入的特性。BeanFactory 提供了工厂模式,它将依赖分离(这些依赖是指在程序的实际逻辑中对象的创建,初始化,访问)

 

posted @ 2016-12-23 18:46  彭玉松  阅读(142)  评论(0编辑  收藏  举报