`

struts2的action中获得request response session

阅读更多

struts2action中获得request response session

关键字: struts2

struts2中有两种方式可以得到这些对象

    1、非IoC方式

    要获得上述对象,关键Struts 2com.opensymphony.xwork2.ActionContext类。我们可以通过它的静态方法getContext()获取当前Action的上下文对象。有了这个对象我们想获得其他几个对象就好办了

Java代码 复制代码
  1. ActionContext ctx = ActionContext.getContext();  
  2. Map session = ctx.getSession();  

    细心的朋友可以发现这里的session是个map对象在Struts2中底层的session都被封装成了Map类型我们可以直接操作这个map 进行对session的写入和读取操作而不用去直接操作HttpSession对象

    另外,org.apache.struts2.ServletActionContext作为辅助类(Helper Class),可以帮助您快捷地获得这几个对象。

      如果你只是想访问session的属性(Attribute),你也可以通过ActionContext.getContext().getSession()获取或添加session范围(Scoped)的对象。

     

2IoC方式(这种方式在tapestry中也是这样实现的)
   
要使用IoC方式,我们首先要告诉IoC容器(Container)想取得某个对象的意愿,通过实现相应的接口做到这点。具体实现。

Java代码 复制代码
  1.      publicclass IoCServlet extends ActionSupport implements SessionAware, ServletRequestAware, ServletResponseAware {  
  2.     private String message;  
  3.     private Map att;  
  4.     private HttpServletRequest request;  
  5.     private HttpServletResponse response;  
  6.     public String getMessage() {  
  7.         return message;  
  8.      }  
  9.      publicvoid setSession(Map att) {  
  10.         this.att = att;  
  11.      }  
  12.      publicvoid setServletRequest(HttpServletRequest request) {  
  13.         this.request = request;  
  14.      }  
  15.      publicvoid setServletResponse(HttpServletResponse response) {  
  16.         this.response = response;  
  17.      }  
  18.     @Override  
  19.     public String execute() {  
  20.          att.put("msg", "Hello World from Session!");  
  21.          HttpSession session = request.getSession();  
  22.          StringBuffer sb =new StringBuffer("Message from request: ");  
  23.          sb.append(request.getParameter("msg"));  
  24.          sb.append("Response Buffer Size: ");  
  25.          sb.append(response.getBufferSize());  
  26.          sb.append("Session ID: ");  
  27.          sb.append(session.getId());  
  28.          message = sb.toString();  
  29.         return SUCCESS;  
  30.      }  
  31. }  

struts.xmlaction中配置拦截器
    <interceptor-ref name="servletConfig"></interceptor-ref>

分享到:
评论

相关推荐

    基于粒度计算的旅游定制公交初设线路优选——以长岛县定制旅游公交为例.pdf

    基于粒度计算的旅游定制公交初设线路优选——以长岛县定制旅游公交为例.pdf

    CSDNApp_242.apk

    CSDNApp_242.apk

    C++如何读取ZIP内容文件

    C++如何读取ZIP内容文件

    Java毕业设计-springboot-vue-医院后台管理系统(源码+sql脚本+29页零基础部署图文详解+32页论文+环境工具+教程+视频+模板).zip

    资源说明: 1:csdn平台资源详情页的文档预览若发现'异常',属平台多文档切片混合解析和叠加展示风格,请放心使用。 2:29页图文详解文档(从零开始项目全套环境工具安装搭建调试运行部署,保姆级图文详解),旨在为更多的人甚至零基础的人也能运行、使用和学习。 3:配套毕业论文,万字长文,word文档,支持二次编辑。 4:范例参考答辩ppt,pptx格式,支持二次编辑。 5:工具环境、ppt参考模板、相关电子教程、视频教学资源分享。 6:资源项目源码均已通过严格测试验证,保证能够正常运行,本项目仅用作交流学习参考,请切勿用于商业用途。 7:项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通。 内容概要: 本系统基于B/S网络结构,在IDEA中开发。服务端用Java并借Spring Boot框架搭建后台。前台采用支持HTML5的VUE框架。用MySQL存储数据,可靠性强。 能学到什么: 使用Spring Boot搭建后台。VUE框架构建前端交互界面、前后端数据交互、MySQL管理数据、从零开始环境搭建、调试、运行、打包、部署流程。

    水下机器人AUV的路径规划及基于模型预测控制MPC的跟踪框架实现与解析,4-IEEE trans顶刊复现,水下机器人AUV的路径规划和基于模型预测控制MPC的跟踪框架 参考文献和建模过程请参考图片中

    水下机器人AUV的路径规划及基于模型预测控制MPC的跟踪框架实现与解析,4-IEEE trans顶刊复现,水下机器人AUV的路径规划和基于模型预测控制MPC的跟踪框架。 参考文献和建模过程请参考图片中的文章,本代码包括路径规划和MPC路径跟踪两个模块,两个模块均采用优化求解器求解,考虑了AUV的水动力学模型,结果是2D空间内的平面路径。 输出的结果请见下图 ,关键词:IEEE trans顶刊复现; 水下机器人AUV; 路径规划; 模型预测控制MPC; 跟踪框架; 优化求解器; 水动力学模型; 2D空间平面路径。,基于IEEE Trans顶刊复现的AUV路径规划与MPC跟踪框架研究

    《已调试》springboot 网站建设服务系统(源码+sql).zip

    1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。

    Java毕业设计-springboot-vue-购物推荐网站(源码+sql脚本+29页零基础部署图文详解+28页论文+环境工具+教程+视频+模板).zip

    资源说明: 1:csdn平台资源详情页的文档预览若发现'异常',属平台多文档切片混合解析和叠加展示风格,请放心使用。 2:29页图文详解文档(从零开始项目全套环境工具安装搭建调试运行部署,保姆级图文详解),旨在为更多的人甚至零基础的人也能运行、使用和学习。 3:配套毕业论文,万字长文,word文档,支持二次编辑。 4:范例参考答辩ppt,pptx格式,支持二次编辑。 5:工具环境、ppt参考模板、相关电子教程、视频教学资源分享。 6:资源项目源码均已通过严格测试验证,保证能够正常运行,本项目仅用作交流学习参考,请切勿用于商业用途。 7:项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通。 内容概要: 本系统基于 B/S 网络结构,在 IDEA 中开发。服务端用 Java 并借 Spring Boot 框架搭建后台。前台采用支持 HTML5 的 VUE 框架。用 MySQL 存储数据,可靠性强。 能学到什么: 使用Spring Boot搭建后台。VUE 框架构建前端交互界面、前后端数据交互、MySQL管理数据、从零开始环境搭建、调试、运行、打包、部署流程。

    2023-04-06-项目笔记 - 第三百八十二阶段 - 4.4.2.380全局变量的作用域-380 -2025.01.18

    2023-04-06-项目笔记-第三百八十二阶段-课前小分享_小分享1.坚持提交gitee 小分享2.作业中提交代码 小分享3.写代码注意代码风格 4.3.1变量的使用 4.4变量的作用域与生命周期 4.4.1局部变量的作用域 4.4.2全局变量的作用域 4.4.2.1全局变量的作用域_1 4.4.2.380局变量的作用域_380- 2025-01-18

    基于springboot+vue社区老年人帮扶系统-6u870vlh.zip

    基于springboot+vue社区老年人帮扶系统_6u870vlh.zip

    Simulink光伏储能VSG仿真模型:完美波形运行,实现光储一次调频、削峰填谷及直流母线电压控制功能,simulink仿真模型光伏储能VSG,加电容,正常运行,波形完美一一光储一次调频、储能削峰填谷

    Simulink光伏储能VSG仿真模型:完美波形运行,实现光储一次调频、削峰填谷及直流母线电压控制功能,simulink仿真模型光伏储能VSG,加电容,正常运行,波形完美一一光储一次调频、储能削峰填谷、 直流母线电压控制。 2018b及以上都可运行哈 ,simulink仿真;光伏储能;VSG;加电容;正常运行;波形完美;光储一次调频;储能削峰填谷;直流母线电压控制;2018b及以上版本。,Simulink光伏储能VSG模型:电容增强与优化调频调压功能解析

    2025年高级生命支持(ACLS)理论考核试题库及答案.docx

    2025年高级生命支持(ACLS)理论考核试题库及答案.docx

    ARM compiler version5.06

    ARM compiler version5.06

    《已调试》springboot 学生成绩请假信息管理系统002(源码+sql).zip

    1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。

    Java毕业设计-springboot-vue-基于保信息学科平台(源码+sql脚本+29页零基础部署图文详解+29页论文+环境工具+教程+视频+模板).zip

    资源说明: 1:csdn平台资源详情页的文档预览若发现'异常',属平台多文档切片混合解析和叠加展示风格,请放心使用。 2:29页图文详解文档(从零开始项目全套环境工具安装搭建调试运行部署,保姆级图文详解),旨在为更多的人甚至零基础的人也能运行、使用和学习。 3:配套毕业论文,万字长文,word文档,支持二次编辑。 4:范例参考答辩ppt,pptx格式,支持二次编辑。 5:工具环境、ppt参考模板、相关电子教程、视频教学资源分享。 6:资源项目源码均已通过严格测试验证,保证能够正常运行,本项目仅用作交流学习参考,请切勿用于商业用途。 7:项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通。 内容概要: 本系统基于B/S网络结构,在IDEA中开发。服务端用Java并借Spring Boot框架搭建后台。前台采用支持HTML5的VUE框架。用MySQL存储数据,可靠性强。 能学到什么: 使用Spring Boot搭建后台。VUE框架构建前端交互界面、前后端数据交互、MySQL管理数据、从零开始环境搭建、调试、运行、打包、部署流程。

    Greenplum Platform Extension Framework 6.11.0 for RHEL 8 gpdb pxf

    Greenplum Platform Extension Framework 6.11.0 for RHEL 8 pxf-gp7-6.11.0-2.el8.x86_64.rpm(97.4 MB) Dec 18, 2024 Dec 19, 2024 c9b2994c61efbb990bb02480c29eeede5415b2af42496b0d1f6a49b200889c46 c5f2ff9b8de2b5120d74fca86e36582c

    Java毕业设计-springboot-vue-疫情下图书馆管理系统(源码+sql脚本+29页零基础部署图文详解+28页论文+环境工具+教程+视频+模板).zip

    资源说明: 1:csdn平台资源详情页的文档预览若发现'异常',属平台多文档切片混合解析和叠加展示风格,请放心使用。 2:29页图文详解文档(从零开始项目全套环境工具安装搭建调试运行部署,保姆级图文详解),旨在为更多的人甚至零基础的人也能运行、使用和学习。 3:配套毕业论文,万字长文,word文档,支持二次编辑。 4:范例参考答辩ppt,pptx格式,支持二次编辑。 5:工具环境、ppt参考模板、相关电子教程、视频教学资源分享。 6:资源项目源码均已通过严格测试验证,保证能够正常运行,本项目仅用作交流学习参考,请切勿用于商业用途。 7:项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通。 内容概要: 本系统基于B/S网络结构,在IDEA中开发。服务端用Java并借Spring Boot框架搭建后台。前台采用支持HTML5的VUE框架。用MySQL存储数据,可靠性强。 能学到什么: 使用Spring Boot搭建后台。VUE框架构建前端交互界面、前后端数据交互、MySQL管理数据、从零开始环境搭建、调试、运行、打包、部署流程。

    AndroidFileTransfer

    Android File Transfer for mac

    高海拔输油管道气保护药芯焊丝半自动焊工艺研究与应用.pdf

    高海拔输油管道气保护药芯焊丝半自动焊工艺研究与应用.pdf

    commons-fileupload-1.5.jar

    commons-fileupload-1.5.jar

    “全桥LLC谐振变换器变频与移相混合控制策略:电压范围拓宽及模式切换仿真研究”,全桥LLC谐振变器变频-移相混合控制仿真 1参考文献:《全桥LLC谐振变器的混合式控制策略-李菊》 拓宽电压范围

    “全桥LLC谐振变换器变频与移相混合控制策略:电压范围拓宽及模式切换仿真研究”,全桥LLC谐振变器变频-移相混合控制仿真。 [1]参考文献:《全桥LLC谐振变器的混合式控制策略_李菊》 拓宽电压范围。 保证mos管的ZVS零电压开通和二极管的ZCS零电流关断。 [2]模式切: ①当输入<输出电压时,变器处于升压模式,采用变频控制模式,, ②当输入>输出电压时,变器处于降压模式,采用定频模式也就是移相模型。 [3]具体策略如下:当输入电压较低时,采用变频控制,变器满占空比工作,通过改变开关频率来调 节输出电压,称此时变器工作在变频(Variable-Frequency,VF)模式;当输入电压较高时, 采用定频控制,变器工作在所设定的最高频率,通过调节移相角来控制输出电压,称此时变 器工作在移相(Phase-Shift,PS)模式。 ,全桥LLC谐振变换器; 混合控制策略; 电压范围拓宽; mos管ZVS零电压开通; 二极管ZCS零电流关断; 变频控制; 移相控制; 升压模式; 降压模式; 最高频率调节。,一个基于混合控制的LLC谐振变换器仿真:频率变频与移相策略联合研究

Global site tag (gtag.js) - Google Analytics