博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
spring主要的作用?
阅读量:6758 次
发布时间:2019-06-26

本文共 1262 字,大约阅读时间需要 4 分钟。

在SSH框假中spring充当了管理容器的角色。我们都知道Hibernate用来做持久层,因 为它将JDBC做了一个良好的封装,程序员在与数据库进行交互时可以不用书写大量的SQL语 句。Struts是用来做应用层的,他它负责调用serivce层。所以的流程大致 是:Jsp页面----Struts------Service(处理类)---Hibernate(左到右)struts 负责控制Service(处理类),从而控制了Service的生命周期,这样层与层之间的 依赖和强,属于耦合。这时,使用就起到了控制Action对象(Strus中的)和 Service类的作用,两者之间的关系就松散了,Spring的Ioc机制(和)正 是用在此处。      Spring的Ioc(和) :就是由容器控制程序之间的(依赖)关系,而非传统实现中,由程序代码直 接操控。 :组件之间的依赖关系由容器在运行期决定 ,由容器动态的将某种依赖关系注 入到组件之中。      从上面我们不难看出:从头到尾Action仅仅是充当了Service的控制工具,这些具体的 业务方法是怎样实现的,他根本就不会管,也不会问,他只要知道这些业务实现类所提供的 方法接口就可以了。而在以往单独使用的时候,所有的业务方法类的生命周期, 甚至是一些业务流程都是由Action来控制的。层与层之间耦合性太紧密了,既降低了数据访 问的效率又使业务逻辑看起来很复杂,代码量也很多。,Spring容器控制所有Action对象和 业务逻辑类的生命周期,由与上层不再控制下层的生命周期,层与层之间实现了完全脱耦, 使程序运行起来效率更高,维护起来也方便。      使用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隔离降低了 程序的耦合性使我们可以在不同的应用中将各个切面结合起来使用大大提高了代码重用度。

转载地址:http://ahfeo.baihongyu.com/

你可能感兴趣的文章
转 MySQL中的共享锁与排他锁
查看>>
入门--JTBC系统学习(1)
查看>>
我的Android进阶之旅------>怎样解决Android 5.0中出现的警告: Service Intent must be explicit:...
查看>>
单点登录实现机制:桌面sso
查看>>
JVM垃圾回收机制
查看>>
Oracle导出导入指定表
查看>>
訪问者模式的分析、结构图及基本代码
查看>>
Android Studio 2.3.3 添加ksoap2的引用(拒绝网上其他的忽悠),也适用于添加其他Jar的引用...
查看>>
sql改写or 改成union不等价数据变多
查看>>
How to skip to next iteration in jQuery.each() util?
查看>>
Android 音视频开发(一) : 通过三种方式绘制图片
查看>>
spring-data-jpa+hibernate 各种缓存的配置演示
查看>>
EmguCV(OpenCV)实现高效显示视频(YUV)叠加包括汉字
查看>>
oracle之 oracle database vault(数据库保险库)
查看>>
linux 条件测试 ******
查看>>
第一次使用Android Studio时你应该知道的一切配置(三):gradle项目构建
查看>>
Expert 诊断优化系列------------------语句调优三板斧
查看>>
怎样使用下载的bootstrap模板?
查看>>
P1636 Einstein学画画
查看>>
TCP/IP 协议簇 端口 三次握手 四次挥手 11种状态集
查看>>