關於struts2中對 request /session/ application 的訪問

 

//第一種方法
//訪問session request applicaton的代碼
package com.sp.stution;

import java.util.Map;

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

public class stu extends ActionSupport {

private String name;
private Map request;
private Map session;
private Map application;
public stu(){
request=(Map)ActionContext.getContext().get("request");
session=(Map)ActionContext.getContext().getSession();
application=(Map)ActionContext.getContext().getApplication();



}
//頁面接收代碼
<s:property value="#request.r1"/>!<%=request.getAttribute("r1") %>
<s:property value="#request.r2"/>!<%=session.getAttribute("r2") %>
<s:property value="#request.r3"/>!<%=application.getAttribute("r3") %>

說明:可以看出雖然我們定義的session application request 都是map類型但是在頁面我們可以看出依然可以像在jsp裏面一樣去訪問
session application request說明struts已經給我們做好了由map類型向web內置對象的轉換
//通過實現//RequestAware ,SessionAware,ApplicationAware三//個接口
//代碼如下
package com.sp.stution;

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;

public class stu extends ActionSupport implements RequestAware ,SessionAware,ApplicationAware {

private String name;
private Map<String, Object> request;
private Map<String,Object> session;
private Map<String,Object> application;

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;

}



public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public String add(){

if(name!="lingkai"){
this.addFieldError("name", "cuoqu");
this.addFieldError("name","you name is too long");
request.put("r1", "re");
session.put("r2", "r2");
application.put("r3", "r3");
return ERROR;
}else{

return SUCCESS;
}


}


}

//運用的是spring的控制反轉思想

本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/lingkaigood123/archive/2010/05/31/5637230.aspx

發佈了45 篇原創文章 · 獲贊 10 · 訪問量 17萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章