在SSH框假中spring充当了管理容器的角色。我们都知道Hibernate用来做持久层,因为它
将JDBC做了一个良好的封装,程序员在与数据库进行交互时可以不用书写大量的SQL语
句。Struts是用来做应用层的,他它负责调用业务逻辑serivce层。所以SSH框架的流程大
致是:Jsp页面----Struts------Service(业务逻辑处理类)---Hibernate(左到右)
struts负责控制Service(业务逻辑处理类),从而控制了Service的生命周期,这样层与层
之间的依赖很强,属于耦合。这时,使用spring框架就起到了控制Action对象(Strus中的)
和Service类的作用,两者之间的关系就松散了,Spring的Ioc机制(控制反转依赖注入
正是用在此处。
Spring的Ioc(控制反转依赖注入
控制反转:就是由容器控制程序之间的(依赖)关系,而非传统实现中,由程序代码
直接操控
依赖注入:组件之间的依赖关系由容器在运行期决定 ,由容器动态的将某种依赖关系
注入到组件之中
使用Spring的第二个好处(AOP应用):
事务的处理:
在以往的JDBCTemplate 中事务提交成功,异常处理都是通过Try/Catch 来完成,而在
Spring中。Spring容器集成了TransactionTemplate,她封装了所有对事务处理的功能,包括
异常时事务回滚,操作成功时数据提交等复杂业务功能。这都是由Spring 容器来管理,大
大减少了程序员的代码量,也对事务有了很好的管理控制。Hibernate中也有对事务的管理,
hibernate 中事务管理是通过SessionFactory 创建和维护Session 来完成。而Spring 对
SessionFactory配置也进行了整合,不需要在通过hibernate.cfg.xml来对SessionaFactory进行
设定。这样的话就可以很好的利用Sping对事务管理强大功能。避免了每次对数据操作都要
现获得Session实例来启动事务/提交/回滚事务还有繁琐的Try/Catch操作。这些也就是Spring
中的AOP(面向切面编程)机制很好的应用。一方面使开发业务逻辑更清晰、专业分工更
加容易进行。另一方面就是应用Spirng AOP隔离降低了程序的耦合性使我们可以在不同
的应用中将各个切面结合起来使用大大提高了代码重用度

spring简介的更多相关文章

  1. Spring学习系列(一) Spring简介

    Spring简介 之前一直想写点东西,可一直没有开始实施,各种原因都有,最大原因可能还是自己太懒了,嘿嘿.最近在看Spring in action这本书,为了能让自己坚持下去把书看完,这次决定同步的在 ...

  2. [原创]java WEB学习笔记96:Spring学习---Spring简介及HelloWord

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  3. Spring简介和基础

    Spring介绍 1.什么事Spring? spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架. spring的设计模式是单例模式和工厂模式. 2.spring的四大优点 轻量 ...

  4. 【Spring 1】Spring简介

    一.Spring简介 首先,Spring框架是由于软件开发的复杂性而创建的.Spring使用的是基本的JavaBean来完成以前只可能由EJB完成的事情.然而,Spring的用途不仅仅限于服务器端的开 ...

  5. Spring框架入门之Spring简介

    一.Spring简介(由Rod Johnson创建的一个开源框架)        Spring是一个开放源代码的设计层面框架,他解决的是业务逻辑层和其他各层的松耦合问题,因此它将面向接口的编程思想贯穿 ...

  6. spring框架篇(一)-------spring简介与配置文件使用控制反转事例

    spring简介 Spring 是一个开源框架,中文意思就是春天,也许是作者想让自己的这个框架给Java开发人员带来春天吧.其官方网站是 https://spring.io/ ,可以在官方网站下载到完 ...

  7. Spring使用笔记(一)Spring简介

    Spring简介 Spring丰富的功能的底层都依赖于它的两个核心特性: 1.依赖注入(dependency injection, DI): 每个对象负责管理与自己协作的对象(即它所依赖的对象)的引用 ...

  8. Unit01: Spring简介 、 Spring容器 、 Spring IOC

    Unit01: Spring简介 . Spring容器 . Spring IOC Spring (1)Spring是什么? Spring是一个开源的用来简化应用开发的框架. (2)Spring的特点? ...

  9. spring简介及常用术语

    1.引入 在开发应用时常会遇到如下问题: 1)代码耦合性高: 2)对象之间依赖关系处理繁琐: 3)事务控制繁琐: 2.Spring简介 1)Spring概述 什么是Spring: ①Spring是一个 ...

  10. Spring(一)--Spring简介

    Spring简介 1. Spring的特点 Spring (春天,绿色)  容器 01.Java EE开发者的春天,大大简化了代码量 02.使用IOC来降低主业务之间的耦合度 03.使用AOP来降低主 ...

随机推荐

  1. Centos 压缩、解压和打包命令

    gzip命令 --功能说明:gz文件的压缩和解压缩. --命令格式:gzip [参数] <文件> --常用参数: -d 解开压缩文件 -l 列出压缩文件的相关信息 -q 不显示警告信息 - ...

  2. MongoDB学习:(一)MongoDB安装

    MongoDB学习:(一)MongoDB安装 MongoDB介绍:     直接百科了: MongoDB安装: 1:下载安装: MongoDB安装:https://www.mongodb.com/do ...

  3. JavaScrip之对象与继承

    这章主要学习对象.原型.原型链和继承,比较核心,所以单独整理这一章的内容. 理解对象:一组名值对,值可以是数据或函数. 属性类型:1数据属性:包含一个数据值的位置.在这个位置可以读取和写入值,4个描述 ...

  4. 重启eclipse color theme失效的解决办法

    For Eclipse Mars users: In the main menu bar, go to Window > Preferences In the preference tree o ...

  5. iOS.ReactNative-3-about-viewmanager-uimanager-and-bridgemodule

    RCTViewManager and RCTUIManager 1. RCTViewManager 1.1 RCTViewManager 实现了接口RCTBridgeModule @interface ...

  6. Phpstorm 设置取消自动保存

    个人通过使用,发现PhpStorm的确是 编辑PHP 的神器,提供用户效率,提供智能代码补全,快速导航以及即时错误检查. 不过,让我用起来不爽的是,它会自动保存,还不能使用快捷键Ctr+Z来撤销,也就 ...

  7. ASP.NET 页生命周期

    ASP.NET 页运行时,此页将经历一个生命周期,在生命周期中将执行一系列处理步骤.这些步骤包括初始化.实例化控件.还原和维护状态.运行事件处理程序代码以及进行 呈现.了解页生命周期非常重要,因为这样 ...

  8. C# 理解Thread.Sleep()方法 ----转帖

    我们可能经常会用到 Thread.Sleep 函数来使线程挂起一段时间.那么你有没有正确的理解这个函数的用法呢?思考下面这两个问题:1.假设现在是 2008-4-7 12:00:00.000,如果我调 ...

  9. Error:SSL peer shut down incorrectly

    从别的地方拷贝过来的项目有时会报这个错误,解决方法 File -> Project Structure -> project 对比本地项目和拷贝项目并修改至与本地项目一致

  10. C# 在winform或者wpf中显示控制台窗口

    这儿需要使用两个系统函数: BOOL WINAPI FreeConsole(void); //// 关闭控制台窗口,参考:http://msdn.microsoft.com/en-us/library ...