Struts2两种解耦访问WEB资源的方式

发布时间:2017-3-26 19:05:19 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"Struts2两种解耦访问WEB资源的方式",主要涉及到Struts2两种解耦访问WEB资源的方式方面的内容,对于Struts2两种解耦访问WEB资源的方式感兴趣的同学可以参考一下。

一.通过com.opensymphony.xwork2.ActionContext public Object get(Object key): ActionContext 类中没有提供类似 getRequest() 这样的方法来获取 HttpServletRequest 对应的 Map 对象.  要得到 HttpServletRequest 对应的 Map 对象, 可以通过为 get() 方法传递 “request” 参数实现 /** * 与Servlet API解耦的方式访问WEB资源 之解耦访问方式一 * ActionContext 中保存了 Action 执行所需要的所有对象, 包括 parameters, request, session, application 等. */ public String test1(){ ActionContext actionContext = ActionContext.getContext(); Map<String,Object> requestMap = (Map<String, Object>) actionContext.get("request"); requestMap.put("requestKey", "requestValue"); Map<String,Object> sessionMap = actionContext.getSession(); sessionMap.put("sessionKey", "sessionValue"); Map<String,Object> applicationMap = actionContext.getApplication(); applicationMap.put("applicationKey", "applicationValue"); return "success"; } 二.让Action实现如下接口: 1.org.apache.struts2.interceptor.RequestAware 2.org.apache.struts2.interceptor.SessionAware 3.org.apache.struts2.interceptor.ApplicationAware public class WebInfoAction implements RequestAware,SessionAware,ApplicationAware{ /** * 与Servlet API解耦的方式访问WEB资源 之解耦访问方式二 * * Action 类通过可以实现某些特定的接口, 让 Struts2 框架在运行时向 Action * 实例注入 parameters, request, session 和 application 对应的 Map 对象: * 这个注入操作不需要我们去注入 */ private Map<String, Object> applicationMap; private Map<String, Object> sessionMap; private Map<String, Object> requestMap; public String test2(){ ActionContext actionContext = ActionContext.getContext(); requestMap.put("requestKey", "requestValue2"); sessionMap.put("sessionKey", "sessionValue2"); applicationMap.put("applicationKey", "applicationValue2"); return "success"; } @Override public void setApplication(Map<String, Object> applicationMap) { this.applicationMap = applicationMap; } @Override public void setSession(Map<String, Object> sessionMap) { this.sessionMap = sessionMap; } @Override public void setRequest(Map<String, Object> requestMap) { this.requestMap = requestMap; } }

上一篇:RSS订阅
下一篇:奔驰CLA45 AMG打造奔驰全新发展趋势

相关文章

相关评论

本站评论功能暂时取消,后续此功能例行通知。

一、不得利用本站危害国家安全、泄露国家秘密,不得侵犯国家社会集体的和公民的合法权益,不得利用本站制作、复制和传播不法有害信息!

二、互相尊重,对自己的言论和行为负责。

好贷网好贷款