>>分享流行的Java框架以及开源软件,对孙卫琴的《精通Spring》、《Spring Cloud Alibaba微服务开发零基础入门到实操》提供技术支持 书籍支持  卫琴直播  品书摘要  在线测试  资源下载  联系我们
发表一个新主题 开启一个新投票 回复文章 您是本文章第 29071 个阅读者 刷新本主题
 * 贴子主题:  struts2的工作原理图,清晰直观 回复文章 点赞(0)  收藏  
作者:sunshine    发表时间:2017-06-27 21:39:41     消息  查看  搜索  好友  邮件  复制  引用

Struts2请求响应流程:

在struts2的应用中,从用户请求到服务器返回相应响应给用户端的过程中,包含了许多组件如:Controller、ActionProxy、ActionMapping、Configuration Manager、ActionInvocation、Inerceptor、Action、Result等。下面我们来具体看看这些组件有什么联系,它们之间是怎样在一起工作的。

点击在新窗口中浏览原图
CTRL+鼠标滚轮放大或缩小

(1)  客户端(Client)向Action发用一个请求(Request)
(2)  Container通过web.xml映射请求,并获得控制器(Controller)的名字
(3)  容器(Container)调用控制器(StrutsPrepareAndExecuteFilter或FilterDispatcher)。在Struts2.1以前调用FilterDispatcher,Struts2.1以后调用StrutsPrepareAndExecuteFilter
(4)  控制器(Controller)通过ActionMapper获得Action的信息
(5)  控制器(Controller)调用ActionProxy
(6)  ActionProxy读取struts.xml文件获取action和interceptor stack的信息。
(7)  ActionProxy把request请求传递给ActionInvocation
(8)  ActionInvocation依次调用action和interceptor
(9)  根据action的配置信息,产生result
(10) Result信息返回给ActionInvocation
(11) 产生一个HttpServletResponse响应
(12) 产生的响应行为发送给客服端。



程序猿的技术大观园:www.javathinker.net



  Java面向对象编程-->Java常用类(上)
  JavaWeb开发-->Web运作原理(Ⅱ)
  JSP与Hibernate开发-->第一个helloapp应用
  Java网络编程-->基于MVC和RMI的分布式应用
  精通Spring-->绑定表单
  Vue3开发-->Vue Router路由管理器
  Rust学习笔记 | 异步代码的几种写法
  面试官问什么是Spring循环依赖,该如何回答?
  Spring 5 webflux响应式编程 - 但时间也偷换概念
  Spring MVC文件上传与下载
  @Resource注解的用法
  vue父、子组件相关的传递
  @SessionAttribute和@SessionAttributes的区别
  Redis的漏洞利用,原来大佬都是这样操作的
  Spring Boot和Feign中使用Java 8时间日期API(LocalDate等)...
  spring cloud分布式微服务的概览
  Spring Cloud 技术栈及架构一览
  Spring Boot集成EHCache实现缓存机制
  网红框架SpringBoot2.x之定制参数浅析
  酒店评论数据分析和挖掘-展现数据分析全流程:报告展示篇
  微架构 springcloud-07. springboot-静态资源处理
  更多...
 IPIP: 已设置保密
楼主      
该用户目前不在线 nihaota 
  
威望: 0
级别: 新手上路
魅力: 1315
经验: 1315
现金: 2944
发文章数: 243
注册时间: 0001-01-01
 消息  查看  搜索  好友  邮件  复制  引用


讨债公司
发文章时间 2022-10-28 21:57:44
 IPIP: 已设置保密 1 楼     
该用户目前不在线 mikhop 
  

威望: 0
级别: 侠客
魅力: 210
经验: 210
现金: 1176
发文章数: 22
注册时间: 0001-01-01
 消息  查看  搜索  好友  邮件  复制  引用


人最强大的时候,不是坚持的时候,而是放下的时候。当你选择腾空双手,还有谁能从你手中夺走什么。
幸运飞艇走势图福彩双色球走势图幸运时时彩走势图
发文章时间 2022-11-01 15:06:32
 IPIP: 已设置保密 2 楼     
1页 2条记录 当前第1
发表一个新主题 开启一个新投票 回复文章


中文版权所有: JavaThinker技术网站 Copyright 2016-2026 沪ICP备16029593号-2
荟萃Java程序员智慧的结晶,分享交流Java前沿技术。  联系我们
如有技术文章涉及侵权,请与本站管理员联系。