SSH框架(Struts+Spring+Hibernate)

在SSH 的组合框架模式中,三者各自的作用?

Struts 是一个很好的MVC框架,主要技术是Servlet和Jsp。Struts的MVC设计模式可以使我们的逻辑变得很清晰,让我们写的程序层次分明。基于Struts开发可以简化开发难度,提高开发效率。

Spring 提供了管理业务对象的一致方法,并鼓励注入对接口编程而不是对类编程的良好习惯,使我们的产品在最大程度上解耦。

Hibernate 是用来持久化数据的,提供了完全面向对象的数据库操作。Hibernate对JDBC进行了非常轻量级的封装,它使得与关系型数据库打交道变得非常轻松。

在Struts+Spring+Hibernate系统中,对象之间的调用流程如下:

  

Struts——>Spring——>Hibernate

JSP——>Action——>Service——>DAO——>Hibernate

SSH工作流程?

       a.启动服务器,加载工程以及web.xml.

           (实例化Lisener,Filter等组件,将Spring容器和Struts2控制创建)

       b.客户端发送请求,所有请求进入Struts2控制器。控制器根据请求类型不同,分别处理。

           (action请求,*.action会进入struts.xml寻找<action>配置.

            其他请求,*.jsp会直接调用请求资源,生成响应信息)

       c.Struts2控制器根据<action>配置调用一个Action对象处理。

         整合方法一:将Action交给Spring容器

          (Action对象由struts2-spring-plugin.jar插件提供的                      StrutsSpringObjectFactory负责去Spring容器获取)

         整合方法二:将Action置于Spring容器之外

          (Action对象由struts2-spring-plugin.jar插件提供的                      StrutsSpringObjectFactory负责创建,然后到Spring容器中寻找与Action

属性匹配的Bean对象,给Action对象注入。(默认采用名称匹配规则)

       d.Struts2控制器执行defaultStack拦截器、Action对象、Result等组件处理.

       e.执行Action的execute业务方法时,如果使用Service或DAO采用Spring的IoC机制调用。

       f.执行Result生成响应信息,执行后续拦截器处理

       g.将响应信息输出。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/528131.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mapbox矢量切片标准_Cesium 加载矢量切片(MapBox Vector Tile)

矢量切片(vector tile)是当前 WebGIS 较热技术&#xff0c;国内的高德、百度等在线地图都使用了矢量切片技术。相较于传统栅格切片&#xff0c;矢量切片好处很多。简单几点就是&#xff1a;轻量、客户端渲染、还可加密(栅格切片容易被爬取)。矢量切片格式一般有 GeoJSON、TopoJ…

d630无电池升级bios_太重要,你想要的电脑BIOS全面解读与设置(下)

设置意外断电后恢复状态通常在电脑意外断电后&#xff0c;需要重新启动电脑&#xff0c;但在 BIOS 中可以对断电恢 复进行设置&#xff0c;一旦电源恢复&#xff0c;电脑将自动启动。下面就在 UEFIBIOS 中设置电 脑的自动断电后重启&#xff0c;具体操作步骤如下。 STEP 1 选择…

MySQL的乱码解决方案

1.如果第一次安装MySQL数据库: 在选择编码时&#xff0c;选择最后一项&#xff0c;并指定编码为utf8或者gbk&#xff08;这两种编码支持中文,是我们比较常用的&#xff09; 如果已经按照完成了MySQL数据库&#xff0c;那么可以进行重新配置修改: 在开始菜单中找到: 然后重复第…

pg数据库开启远程连接_疫情之下,开启在家办公模式,远程连接工具篇之向日葵...

1月30号本来就要返程去上班了&#xff0c;接到公司通知&#xff0c;根据当前疫情的形势&#xff0c;假期延长到3号&#xff0c;退车票&#xff0c;候补抢票一顿操作&#xff0c;将票改到了3号&#xff0c;3号又接到通知假期延长到10号。作为一个一线的销售人员&#xff0c;工作…

谈谈对MVC的理解(View+Model+Controller)

1) 什么是MVC&#xff1f; MVC是一种设计思想&#xff0c;根据职责不同将程序中的组件分成以下3个部分。 V&#xff08;View视图&#xff09;&#xff1a;负责与用户交互。将数据展现&#xff0c;或者是接收数据 M&#xff08;Model模型&#xff09;&#xff1a;负责业务处理。…

吃下去的东西老是往上翻上来_食管裂孔疝的这个诱因你知道吗?医生:不要再吃过烫的食物...

食管裂孔疝的忌吃辣门诊遇见一个爱吃热、辣食物的患者。她自述饭后老是反酸水呕吐&#xff0c;本来以为只是普通胃病&#xff0c;最近到我们医院一查&#xff0c;结果让她大吃一惊&#xff0c;本在腹腔的胃竟然有部分“跑”进了胸腔&#xff01;两年多前&#xff0c;这个女士发…

物理搬砖问题_全职业通用,搬砖市场装备

更多原创文章可关注微信公众号&#xff1a;地下城勤帝 查看大家好&#xff0c;我是勤帝&#xff0c;我只写大家能看懂的文章搬砖市场的角色更新了一些&#xff0c;装备都有所不同&#xff0c;今天我给大家一个可以通用的装备&#xff0c;这套装备虽然成型不快&#xff0c;但是…

Oracle中表连接的方式有哪些

内连接(自然连接) 等值连接、自然连接和不等值连接 &#xff5b;内连接是join 关键字连接两个表&#xff0c;语法为 table1 join table2 on 条件。 根据使用的比较方式不同&#xff0c;内连接又分为等值连接、自然连接和不等值连接。 等值连接&#xff1a;所谓等值连接&…

快手通过标签添加的我_快手怎么上热门?快手短视频推荐指标有哪些?

“快手怎么才能上热门&#xff1f;快手上热门都有哪些技巧&#xff1f;”其实这些问题&#xff0c;除了通过提高短视频质量&#xff0c;还可以通过分析推荐指数的方式解决。运营者想要有效提升短视频的播放量&#xff0c;想让快手短视频快速上热门&#xff0c;还可以从推荐指数…

JAVA的数据类型有哪些?

⑴基本数据类型&#xff08;八种&#xff09;&#xff1a; 整型&#xff1a; byte 1字节, short 2字节, int 4字节, long 8字节 浮点型&#xff1a; float 4字节, double 8字节 【float 类型共 32位&#xff08;不 int相同&#xff09;&#xff0c;其中 1位为符号位…

python机器学习算法.mobi_机器学习之ID3算法详解及python代码实现

在生活中我们经常会用到决策树算法&#xff0c;最简单的就是二叉树了&#xff1b;相信大家也会又同样的困扰&#xff0c;手机经常收到各种短信&#xff0c;其中不乏很多垃圾短信、此时只要设置这类短信为垃圾短信手机就会自动进行屏蔽、减少被骚扰的次数&#xff0c;同时正常短…

java中的4种访问制权限有哪些?分别作用范围是什么?

(1).public&#xff1a;最大访问控制权限&#xff0c;对所有的类都可见。 (2).protect&#xff1a;修饰的&#xff0c;在类内部、同一个包、子类中能访问 (3).default&#xff1a;包访问权限&#xff0c;即同一个包中的类可以可见。默认不显式指定访问控制权限时就是default包…

打docker镜像_从安全到镜像流水线,Docker 最佳实践与反模式一览

作者 | Timothy Mugayi译者 | 弯月&#xff0c;责编 | 夕颜封图 | CSDN付费下载自视觉中国出品 | CSDN(ID:CSDNnews)在使用Docker的大部分时间里&#xff0c;我们并不关心其内部的工作原理。仅凭启动一个Docker容器并且让应用程序运行良好&#xff0c;并不能说明你已经实现了一…

JAVA重载和重写的区别?

重载&#xff1a;方法名相同&#xff0c;参数不同&#xff08;参数类型或者长度&#xff09; 重载和修饰符和返回类型无关。 一是方法的参数列表必须改变&#xff0c;包括参数的类型&#xff0c;参数的个数多少&#xff0c;参数顺序。 二是重载对返回类型&#xff0c;访问修饰…

详细关闭iiop方法_疏通暖气片堵塞的方法,看完你就知道了!

冬季几乎家家户户都会安装暖气片来进行采暖&#xff0c;但在使用过程中&#xff0c;通常会出现暖气片被堵&#xff0c;用户不知道被堵的原因又不知从哪下手&#xff0c;今天金旗舰旗哥带大家来了解一下暖气片被堵塞的原因及疏通方法。一、堵塞暖气片的原因&#xff1a;1、暖气片…

谈谈对集合框架的理解?

集合框架包括集合不映射&#xff08;Collection and Map&#xff09; List 元素有先后次序的集合, 元素有 index 位置, 元素可以重复&#xff0c;继承自 Collection 接口,实现类: ArrayList, Vector, LinkedList List 表示有先后次序的对象集合 ArrayList是使用变长数组算法…

17 软件源_9成职场人支持“准点下班”,2020年度职场报告:工作是最大焦虑源

如果所有人都拒绝996&#xff0c;能否改变职场内卷生态&#xff1f;职场社交平台脉脉站内的数据显示&#xff0c;在一则&#xff1a;“准点下班VS加班谁才是好员工”的问答中&#xff0c;8.1万的投票者选择“准点”下班&#xff0c;占89%&#xff1b;只有9968名投票者认为“加班…

前端三大框架

一、web前端之Angularjs框架 如果您对最新的web开发技术有所了解&#xff0c;那么Angularjs对您来说是一个熟悉的名称。AngularJS是一个客户端的JavaScript MVC开源框架&#xff0c;特别为使用MVC架构模式的单页面web应用而设计&#xff0c;可用于开发动态Web应用程序。它不是…

js如何在当前页面加载springmvc返回的页面_手写SpringMVC学习

前面我们学习了spring框架源码&#xff0c;做了一些自己手写的学习&#xff0c;最近&#xff0c;我们开始学习springMVC框架的学习 &#xff0c;springMVC框架&#xff0c;相信大家不陌生了&#xff0c;所以这里不做过多的介绍了。SpringMVC以DispatcherServlet为核心&#xff…

用python做简单的地理聚类分析案例_用Python做一个简单的翻译工具

编程本身是跟年龄无关的一件事&#xff0c;不论你现在是十四五岁&#xff0c;还是四五十岁&#xff0c;如果你热爱它&#xff0c;并且愿意持续投入其中&#xff0c;必定会有所收获。本文就来自编程教室一位“小”读者的投稿&#xff08;互助学习1群里的同学应该对作者的名字很熟…