[转帖]Struts2访问request,session,application的四种方式_Tomcat, WebLogic及J2EE讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  Tomcat, WebLogic及J2EE讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 4333 | 回复: 0   主题: [转帖]Struts2访问request,session,application的四种方式        下一篇 
zhsgood
注册用户
等级:列兵
经验:102
发帖:70
精华:0
注册:2011-11-28
状态:离线
发送短消息息给zhsgood 加好友    发送短消息息给zhsgood 发消息
发表于: IP:您无权察看 2011-11-29 14:13:53 | [全部帖] [楼主帖] 楼主

方式1--》访问Map类型的:

Java代码
北京联动北方科技有限公司北京联动北方科技有限公司北京联动北方科技有限公司

  1. package cn.pdsu.edu; 
  2. import java.util.Map; 
  3. import com.opensymphony.xwork2.ActionContext; 
  4. import com.opensymphony.xwork2.ActionSupport; 
  5. /** 
  6.  * 通过ActionContext获得Map类型的request,session,application 
  7.  */
  8. publicclass ActionDemo1 extends ActionSupport { 
  9.       private Map<String,Object> request; 
  10.       private Map<String,Object> session; 
  11.       private Map<String,Object> application; 
  12.        
  13.       public ActionDemo1() { 
  14.             this.request = (Map)ActionContext.getContext().get("request"); 
  15.             this.session = ActionContext.getContext().getSession(); 
  16.             this.application = ActionContext.getContext().getApplication(); 
  17.        } 
  18.       
  19.       @Override
  20.       public String execute() throws Exception { 
  21.              request.put("message", "message"); 
  22.              session.put("message", "message"); 
  23.              application.put("message", "message"); 
  24.             return SUCCESS; 
  25.        } 


package cn.pdsu.edu;
import java.util.Map;

import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;

/**
* 通过ActionContext获得Map类型的request,session,application
*/
public class ActionDemo1 extends ActionSupport {
       private Map<String,Object> request;
       private Map<String,Object> session;
       private Map<String,Object> application;

       public ActionDemo1() {
             this.request = (Map)ActionContext.getContext().get("request");
             this.session = ActionContext.getContext().getSession();
             this.application = ActionContext.getContext().getApplication();
       }

       @Override
       public String execute() throws Exception {
             request.put("message", "message");
             session.put("message", "message");
             application.put("message", "message");
             return SUCCESS;
       }
}



方式2--》访问map类型的:

Java代码
北京联动北方科技有限公司北京联动北方科技有限公司北京联动北方科技有限公司

  1. package cn.pdsu.edu; 
  2. import java.util.Map; 
  3. import org.apache.struts2.interceptor.ApplicationAware; 
  4. import org.apache.struts2.interceptor.RequestAware; 
  5. import org.apache.struts2.interceptor.SessionAware; 
  6. import com.opensymphony.xwork2.ActionContext; 
  7. import com.opensymphony.xwork2.ActionSupport; 
  8. /** 
  9.  * 通过xxxAware接口来获得Map类型的request,session,application 
  10.  */
  11. publicclass ActionDemo2 extends ActionSupport implements RequestAware,SessionAware,ApplicationAware{ 
  12.       private Map<String,Object> request; 
  13.       private Map<String,Object> session; 
  14.       private Map<String,Object> application; 
  15.       
  16.       @Override
  17.       public String execute() throws Exception { 
  18.              request.put("message", "message"); 
  19.              session.put("message", "message"); 
  20.              application.put("message", "message"); 
  21.             return SUCCESS; 
  22.        } 
  23.       
  24.       publicvoid setRequest(Map<String, Object> request) { 
  25.             this.request=request; 
  26.        } 
  27.       
  28.       publicvoid setSession(Map<String, Object> session) { 
  29.             this.session=session; 
  30.        } 
  31.       
  32.       publicvoid setApplication(Map<String, Object> application) { 
  33.             this.application = application; 
  34.        } 


package cn.pdsu.edu;
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.ActionContext;
import com.opensymphony.xwork2.ActionSupport;

/**
* 通过xxxAware接口来获得Map类型的request,session,application
*/
public class ActionDemo2 extends ActionSupport implements RequestAware,SessionAware,ApplicationAware{
       private Map<String,Object> request;
       private Map<String,Object> session;
       private Map<String,Object> application;

       @Override
       public String execute() throws Exception {
             request.put("message", "message");
             session.put("message", "message");
             application.put("message", "message");
             return SUCCESS;
       }

       public void setRequest(Map<String, Object> request) {
             this.request=request;
       }

       public void setSession(Map<String, Object> session) {
             this.session=session;
       }

       public void setApplication(Map<String, Object> application) {
             this.application = application;
       }
}



方式3--》访问HttpServletRequest

Java代码
北京联动北方科技有限公司北京联动北方科技有限公司北京联动北方科技有限公司

  1. package cn.pdsu.edu; 
  2. import java.util.Map; 
  3. import javax.servlet.ServletContext; 
  4. import javax.servlet.http.HttpServletRequest; 
  5. import javax.servlet.http.HttpSession; 
  6. import org.apache.struts2.ServletActionContext; 
  7. import org.apache.struts2.interceptor.ApplicationAware; 
  8. import org.apache.struts2.interceptor.RequestAware; 
  9. import org.apache.struts2.interceptor.SessionAware; 
  10. import com.opensymphony.xwork2.ActionContext; 
  11. import com.opensymphony.xwork2.ActionSupport; 
  12. publicclass ActionDemo3 extends ActionSupport { 
  13.       private HttpServletRequest request; 
  14.       private HttpSession session; 
  15.       private ServletContext application; 
  16.       
  17.       public ActionDemo3() { 
  18.              request = ServletActionContext.getRequest(); 
  19.              session = request.getSession(); 
  20.              application = session.getServletContext(); 
  21.        } 
  22.       
  23.       @Override
  24.       public String execute() throws Exception { 
  25.              request.setAttribute("message", "message"); 
  26.              session.setAttribute("message", "message"); 
  27.              application.setAttribute("message", "message"); 
  28.             return SUCCESS; 
  29.        } 


package cn.pdsu.edu;
import java.util.Map;

import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

import org.apache.struts2.ServletActionContext;
import org.apache.struts2.interceptor.ApplicationAware;
import org.apache.struts2.interceptor.RequestAware;
import org.apache.struts2.interceptor.SessionAware;

import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;

public class ActionDemo3 extends ActionSupport {
       private HttpServletRequest request;
       private HttpSession session;
       private ServletContext application;

       public ActionDemo3() {
             request = ServletActionContext.getRequest();
             session = request.getSession();
             application = session.getServletContext();
       }

       @Override
       public String execute() throws Exception {
             request.setAttribute("message", "message");
             session.setAttribute("message", "message");
             application.setAttribute("message", "message");
             return SUCCESS;
       }
}



方式4--》通过接口访问HttpServletRequest

Java代码
北京联动北方科技有限公司北京联动北方科技有限公司北京联动北方科技有限公司

  1. package cn.pdsu.edu; 
  2. import java.util.Map; 
  3. import javax.management.j2ee.statistics.ServletStats; 
  4. import javax.servlet.ServletContext; 
  5. import javax.servlet.http.HttpServletRequest; 
  6. import javax.servlet.http.HttpSession; 
  7. import org.apache.struts2.ServletActionContext; 
  8. import org.apache.struts2.interceptor.ApplicationAware; 
  9. import org.apache.struts2.interceptor.RequestAware; 
  10. import org.apache.struts2.interceptor.ServletRequestAware; 
  11. import org.apache.struts2.interceptor.SessionAware; 
  12. import com.opensymphony.xwork2.ActionContext; 
  13. import com.opensymphony.xwork2.ActionSupport; 
  14. publicclass ActionDemo4 extends ActionSupport implements ServletRequestAware{ 
  15.       private HttpServletRequest request; 
  16.       private HttpSession session; 
  17.       private ServletContext application; 
  18.       
  19.       @Override
  20.       public String execute() throws Exception { 
  21.              request.setAttribute("message", "message"); 
  22.              session.setAttribute("message", "message"); 
  23.              application.setAttribute("message", "message"); 
  24.             return SUCCESS; 
  25.        } 
  26.       
  27.       publicvoid setServletRequest(HttpServletRequest request) { 
  28.             this.request = request; 
  29.             this.session = request.getSession(); 
  30.             this.application = session.getServletContext(); 
  31.        } 




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论