Struts2访问web元素 获取request,session,application
来源:互联网 发布:淘宝客服兼职可信吗 编辑:程序博客网 时间:2024/05/22 10:45
Struts2访问web元素的四种方法
1第一种,也就是最常用的一种,实现RequestAware,SessionAware,ApplicationAware接口
struts以依赖注入方式把request,session和application赋上值。
</pre><pre name="code" class="java">package com.pengli.struts.parampack;import java.util.Map;import org.apache.struts2.interceptor.ApplicationAware;import org.apache.struts2.interceptor.RequestAware;import org.apache.struts2.interceptor.SessionAware;import com.opensymphony.xwork2.ActionSupport;public class MyWinAction2 extends ActionSupport implements RequestAware,SessionAware,ApplicationAware{ static int actionCount=0; private Map<String, Object> my_Request; private Map<String, Object> session; private Map<String, Object> application; public String add() { AddKey(); return "add"; } @Override public void setRequest(Map<String, Object> arg0) { // TODO Auto-generated method stub my_Request=arg0; } @Override public void setApplication(Map<String, Object> arg0) { // TODO Auto-generated method stub application=arg0; } @Override public void setSession(Map<String, Object> arg0) { // TODO Auto-generated method stub session = arg0; } private void AddKey() { ++actionCount; my_Request.put("a1", "Two"+actionCount); ++actionCount; session.put("a2", "Two"+actionCount); ++actionCount; application.put("a3", "Two"+actionCount); } }
第二种,实现ServletRequestAware接口,通过得到request后,再通过request获取到session,application
package com.pengli.struts.parampack;import javax.servlet.ServletContext;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpSession;import org.apache.struts2.interceptor.ServletRequestAware;import org.apache.struts2.util.ServletContextAware;import com.opensymphony.xwork2.ActionSupport;public class MyWinAction3 extends ActionSupport implements ServletRequestAware { private HttpServletRequest request; private HttpSession session; private ServletContext application; public String add() { setAttribute(); return "add"; } @Override public void setServletRequest(HttpServletRequest arg0) { // TODO Auto-generated method stub request=arg0; session=request.getSession(); application=session.getServletContext(); } private void setAttribute() { request.setAttribute("a1", "ThreeA1"); session.setAttribute("a2", "ThreeA2"); application.setAttribute("a3", "ThreeA3"); }}
第三种:用ServletActionContext得到request再得到sesion和application
package com.pengli.struts.parampack;import javax.servlet.ServletContext;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpSession;import org.apache.struts2.ServletActionContext;import com.opensymphony.xwork2.ActionSupport;public class MyWinAction4 extends ActionSupport{ private HttpServletRequest request; private HttpSession session; private ServletContext application; public String add(){ getInfo(); setAttribute(); return "add"; } private void getInfo() { request = ServletActionContext.getRequest(); session = request.getSession(); application = session.getServletContext(); } private void setAttribute() { request.setAttribute("a1", "FourA1"); session.setAttribute("a2", "FourA2"); application.setAttribute("a3", "FourA3"); }}
第四种,通过ActionContext得到相应的参数
package com.pengli.struts.parampack;import java.util.Map;import com.opensymphony.xwork2.ActionContext;import com.opensymphony.xwork2.ActionSupport;public class MyWiAction extends ActionSupport { private UserModel user; public String add1() { if(user == null) { this.addFieldError("user", "user object is null"); return ERROR; } if(user.getName()== null||user.getAge() == null) { this.addFieldError("name", "name is null"); this.addFieldError("age", "age is null"); return ERROR; } System.out.println(user.getAge()); System.out.println(user.getName()); return "add1"; } static int actionCount=0; private Map request1; private Map session1; private Map application1; public String add() { request1 = (Map)ActionContext.getContext().get("request"); session1=ActionContext.getContext().getSession(); application1 = ActionContext.getContext().getApplication(); AddKey(); return "add"; } @Override public String execute() throws Exception { // TODO Auto-generated method stub return super.execute(); } public String add2() { return "add2"; } public String add3() { return "add3"; } private void AddKey() { ++actionCount; request1.put("a1", "a1haha"+actionCount); ++actionCount; session1.put("a2", "a2haha"+actionCount); ++actionCount; application1.put("a3", "a3haha"+actionCount); } public String edit() { return "edit"; } public UserModel getUser() { return user; } public void setUser(UserModel user) { this.user = user; }}
0 0
- Struts2访问web元素 获取request,session,application
- Struts2访问web元素(包括:request,session,application和HttpServletRequest,HttpServletSession, HttpServletContext)的4种方法
- 在Struts2中访问Web页面元素request、response、session、application的四种方法
- Struts2访问web元素(Request,Session,Application)的四种方式
- Struts2访问web元素(包括:request,session,application)的4种方法
- Struts中request,session和application方法访问web元素
- struts2获取request,session,application
- struts2 获取request,session,application
- struts2获取request,session,application
- struts2 获取request session application
- struts2 Action 访问web对象(request,session,application)
- Struts2获取Web容器资源的方式 访问request,session
- Struts2 访问request、session和application对象
- Struts2 访问request、session和application对象
- [Struts2]访问request,session和application对象
- Struts2初级教程03 访问request session application
- Struts2访问request、session、application对象
- Struts2 访问request session application对象
- postfixadmin登陆无反应或者404
- acm2008Java实现给定一组数输出这组数的整数负数和零的个数
- WriteChars
- AndroidStudio Gradle项目中添加JNI生成文件(.so文件)
- iOS开发系列--触摸事件、手势识别、摇晃事件、耳机线控
- Struts2访问web元素 获取request,session,application
- Python中的全局变量操作
- windows 系统远程访问windows 服务器,进行文件传输
- Debian 7.8时区设置
- 别名函数之die()与exit()的真正区别
- VC 清除IE缓存、cookie、历史记录等
- 使用Maven管理Spring
- Android中dip和sp的真正区别
- 4. Python中的序列——字典