Struts2獲取Web容器資源的方式

2021-06-17 20:28:37 字數 1191 閱讀 7699

方式一:

通過servletactioncontext取得request,返回httpservletrequest。

通過request.getattribute取值

方式二:

通過actioncontext取得context,然後獲取key為request的值,返回map。

通過request.get(key)取值

map request = (map)actioncontext.getcontext().get("request");

system.out.println(request.get("user.username"));

方式三:

實現相應的資源介面,如requestaware,responseaware,sessionaware;

實現相應的set方法,再給字段變數賦值。

public class loginaction2 implements requestaware 

public string execute() throws exception

}

方式四:

實現相應的資源介面,如servletrequestaware,servletresponseaware

實現相應的set方法,再給字段變數賦值

public class loginaction2 implements servletrequestaware 

public string execute() throws exception

}

小結:

(1)如果只是對request、response進行一些簡單的操作(設值、取值),推薦使用第二種和第三種map方式(簡單)。

(2)如果需要對request、response進行一些特殊的操作,如(用response寫出一些東西,要用到write操作),(用request設值字符集之類),則需要用httpservletrequest。

Struts2中的容器

strut2中的容器中比較常用的應該是valuestack了,有了它,連request等都一邊站了。那麼值棧與request是什麼關係呢?本來事情的起因是因為一同事使用el表示式來獲取action中的屬性值沒有取到,而他認為action中的屬性值就儲存在request中。但是我記得兩者不是一回事,我...

Struts2接受Web引數

在struts中是不能使用request來接收引數的,那麼怎麼使用request來接收引數呢?要使用下列方式接受web傳遞過來的引數,第一要把struts2的配置配好才能使用哦。注意下web.xml的struts2的2.0版本配置可能會有問題,存在乙個bug。第一種簡單資料型別接受引數 privat...

Struts2 訪問web元素

訪問web元素的四種方法 耦合,依賴注入 耦合,非依賴注入 非耦合,依賴注入 非耦合,非依賴注入 耦合 可以得到httpservletresponse,httpservletrequest,httpsession等型別物件。能直接操作到真正的web元素。非耦合 得到的是由struts封裝好的map型...