Web 应用中通常需要访问的 Servlet Api 就是 HttpServletRequest 、HttpSession 和 ServletContext,这三个接口分别代表 JSP内置对象中的 request、session 和 application.

一、通过 struts 的 ActionContext 类来访问(间接性访问).

eg1:

action文件:

struts.xml文件:

jsp 页面:

二、struts 通过 ServletContextAware、ServletRequestAware、ServletResponseAware 接口直接访问.

ServletContextAware:实现该接口的 Action 可以直接访问 web应用的 ServletContext 实例.

ServletRequestAware:实现该接口的 Action 可以直接访问 用户请求的 HttpServletRequest 实例.

ServletResponseAware:实现该接口的 Action 可以直接访问 服务器响应的 HttpServletResponse 实例.

eg2:

实现步骤:实现 ServletResponseAware 接口,仅需要实现public void setServletResponse(HttpServletResponse response) 方法,该方法中有一个HttpServletResponse 参数,该参数就代表了 web 应用对客户端的响应。写法如 eg2 所示.同理,如果实现 ServletRequestAware 接口 和 ServletContextAware 接口,操作 同前面的 ServletResponseAware  操作一样.

三、struts 通过 工具类 ServletActionContext 来 访问 Servlet Api (不建议使用)

static PageContext getPageContext(): 取得 web 应用的 PageContext 对象.

static HttpServletRequest getRequest(): 取得 web 应用的 HttpServletRequest 对象.

static HttpServletResponse getResponse(): 取得 web 应用的 HttpServletResponse 对象.

static ServletContext getServletContext(): 取得 web 应用的 ServletContext 对象.

转载于:https://www.cnblogs.com/pan1308/p/4446557.html

struts2 - ation 访问 Servlet api相关推荐

  1. struts2中访问servlet API

    Struts2中的Action没有与任何Servlet API耦合,,但对于WEB应用的控制器而言,不访问Servlet API几乎是不可能的,例如需要跟踪HTTP Session状态等.Struts ...

  2. 关于Struts2三种访问Servlet API方式的总结

    在开发j2ee过程中,通常我们需要访问的Servlet API是:HttpSession,HttpservletRequest,ServletContext,这三者分别对应于JSP的内置对象:sess ...

  3. Struts2中Action访问Servlet API的三种方法

    Struts2的Action并未直接与任何Servlet API耦合,这是Struts2的一个改良之处,因为Action类不再与Servlet API耦合,能更轻松的测试该Action.但如何访问? ...

  4. Action访问Servlet API的三种方法

    一.为什么要访问Servlet API ? Struts2的Action并未与Servlet API进行耦合,这是Struts2 的一个改良,从而方便了单独对Action进行测试.但是对于Web控制器 ...

  5. Action访问Servlet API的对象

    1,Action访问ActionContext的方式:(request session application) Struts2中的Action与Servlet API完全分离,但是在实现业务逻辑处理 ...

  6. Struts2 Action与Servlet API耦合

    单元测试在开发中是非常重要的一个环节 程序员在写完代码时,相应的单元测试也应写完整,否则你的代码就是不能让人信服的 Struts2将Action与Servlet的API进行解耦之后,就使得单元测试变得 ...

  7. Struts(八)Strits2访问servlet API

    1.获得servlet API的两种方法 (1).ServletActionContext类(基本都是静态方法) public static HttpServletRequet getRequest( ...

  8. (转)Struts2访问Servlet的API及......

    http://blog.csdn.net/yerenyuan_pku/article/details/67315598 Struts2访问Servlet的API 前面已经对Struts2的流程已经执行 ...

  9. Struts2访问Servlet的三种方式

    Struts2访问Servlet的三种方式 基本介绍 在Struts2中,Action并没有直接和Servlet API耦合.虽然Struts2 中的Action访问Servlet API麻烦一些,但 ...

最新文章

  1. 大数据下Limit使用(MySQL)
  2. ast抽象语法树_新抽象语法树(AST)给 PHP7 带来的变化
  3. 【Python基础】用Python制作漂亮的流动桑基图
  4. HDU 4705 Y (树形DP)
  5. 互联网工程任务组(IETF)
  6. Hbase 协处理器 RegionObserver
  7. 笔记本超频会烧吗_笔记本电脑cpu超频是什么意思?超频会怎样啊?
  8. 使用Dockerfile制作JDK+tomcat镜像
  9. 学习Node.js并开始在浏览器之外执行JavaScript
  10. 南非看世界杯通信问题全攻略(世界杯与通信1)
  11. 答非所问:产品质量怎样?发现了很多BUG
  12. 海量数据处理 算法总结
  13. python库之pyserial用法,pyserial和serial的区别
  14. cadence17.2安装教程
  15. 冶金矿山数字化价值链分析
  16. html桂花酿网页,桂花酒的做法
  17. 基于双月数据集利用最小二乘法进行分类
  18. 如何重装Mac OS系统
  19. NXP JN5169 使用看门狗定时器
  20. 使用Bootstrap框架写的一个小实例

热门文章

  1. DOS 批量修改文件名
  2. 不需要训练数据的图像恢复
  3. 干货 | YOLOv5在建筑工地中安全帽佩戴检测的应用
  4. linux ruby作用域,细说Ruby细化
  5. 物联网设备感染Mirai病毒发起的DDoS攻击
  6. EAST算法超详细源码解析:数据预处理与标签生成
  7. 哈工大成立人工智能研究院,NLP全国第三
  8. 解析Tensorflow官方PTB模型的demo
  9. 基础知识(五)对齐变换相关函数
  10. 基础知识(三)makefile文件编写初级篇