struts2訪問servletapi的方式有:解耦合方式和耦合方式
通過actioncontext類來實現。但是只能獲得request物件,而得不到response物件。
actioncontext是action的上下文物件,action執行期間所用到的資料都儲存在actioncontext中,例如session會話和客戶端提交的引數等資訊。
actioncontext類中包含的常用方法:
static actioncontext getcontext():靜態方法,獲取系統的actioncontxt物件。
也就是說這種方式是通過得到乙個actioncontxt的物件,然後通過這個物件獲得servlet的一些資料。
object get(object key ):該方法類似於httpservletrequest的getattribute(string name) 方法。
map getparameters():獲取所有的請求引數,類似於httpservletrequest物件的getparametermap()方法。
map getsession():返回乙個map物件,該map模擬了httpsession例項。
void setsession(map session):直接傳入乙個map例項,講該map例項的key-value轉換成session的屬性名屬性值。
就相當於request物件,然後通過向map集合中以鍵值對的形式進行儲存。
actioncontext.getcontext().put(key, value);
//通過get方法獲得指定鍵對應的值
actioncontext.getcontext().get(key);
//通過向map集合中以儲鍵值對的形式 向session中儲存值
actioncontext.getcontext().getsession().put(key, value);
actioncontext.getcontext().getsession().get(key);
通過servletactioncontext類來實現。既可以得到request物件,又能獲得到response物件。可以看到很多方法都是靜態方法
static sevletcontext getsevletcontext():取得web應用的servletcontxt物件。
static pagecontext getpagecontext():取得web應用pagecontext物件。
static httpservletrequest getrequest():直接獲得request物件
static httpservletresposne getresponse():直接獲得response物件
//獲得request物件
//獲得response物件
//獲得request和response物件後,就可以呼叫servletapi中對應的方法了
servletactioncontext.getrequest().setattribute(arg0, arg1);
通過實現指定介面servletcontextaware,servletrequestaware,servletresponseaware,這種方式不推薦使用,與servletapi的耦合性大。 Struts2訪問ServletAPI方法
一 struts2通過在action中訪問servletapi a struts2通過actioncontext類來訪問servletapi b 所屬包 com.opensymphony.xwork2 c 常用方法 i.map getparameters 獲取所有的請求引數資訊,此map的key是s...
Struts2 訪問web元素
訪問web元素的四種方法 耦合,依賴注入 耦合,非依賴注入 非耦合,依賴注入 非耦合,非依賴注入 耦合 可以得到httpservletresponse,httpservletrequest,httpsession等型別物件。能直接操作到真正的web元素。非耦合 得到的是由struts封裝好的map型...
Struts2字尾 深入Struts2
一 將action字尾變成html字尾 xmlversion 1.0 encoding utf 8 doctype struts public apache software foundation dtd struts configuration 2.1 en struts include file...