本系列博客汇总在这里:Spring 汇总


源码工程文件为:spring3.2_01

一、Spring 介绍

Spring 是一个开源框架,Spring 是于 2003 年兴起的一个轻量级的 Java 开发框架,由 Rod Johnson 在其著作 Expert One-On-One J2EE Development and Design 中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为 J2EE 应用程序开发提供集成的框架。Spring 使用基本的 JavaBean 来完成以前只可能由 EJB 完成的事情。然而,Spring 的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何 Java 应用都可以从 Spring 中受益。Spring 的核心是控制反转(IoC)和面向切面(AOP)。简单来说,Spring 是一个分层的 JavaSE/EEfull-stack (一站式)轻量级开源框架。

二、控制反转(Ioc/DI)
  • 控制反转(Inversion of Control),就是应用本身不负责对象的创建和维护,对象和依赖对象创建完全交给Spring的容器去管理和维护,这个权利反转给容器。
  • 项目中分层开发,学 Spring 之前 bean 都是我们自己创建
    Spring(1 )_Spring 概述_面向切面
    UserDaoImpl 是我们自己创建的,我们自己创建 DaoImpl();带来了很大的耦合性,项目不好维护,测试成本也高。
三、面向切面(AOP)

AOP(Aspect Oriented Programming),通过预编译的方式在运行期使用动态代理的方式来实现的一种技术。

  • 在项目中使用 aop 来管理事务,事务的开启,提交,回滚。
  • 在项目中管理事务的传播特性。
Public void saveOrder(Order order, Detail detail)
{
	orderDao.save(Order);
	detailDao.save(detail);
	logDao.save(log);
}
四、Spring 的其他功能
  • 提供对其他框架的整合(struts,hibernate)。
  • Spring 提供 jdbcTemplate,hibernateTemplate。
  • String 提供了 MVC 层的开发。

Spring(1 )_Spring 概述_开源框架_02

如有错误,欢迎指正!