Struts2訪問ServletAPI方法

2021-08-08 01:51:50 字數 2794 閱讀 6190

一、struts2通過在action中訪問servletapi

a) struts2通過actioncontext類來訪問servletapi

b) 所屬包:com.opensymphony.xwork2

c) 常用方法:

i. map getparameters():獲取所有的請求引數資訊,此map的key是string,value是object,其值是乙個字串的陣列

ii. put(string key,object value):相當於呼叫request物件的setattribute方法

iv. static actioncontext getcontext():靜態方法,獲得框架的actioncontext例項:注意此方法必須在使用的action方法內部呼叫才能起作用,不能再建立action例項的構造方法中呼叫

vi. setsession(map):傳入乙個map物件,將其中的key-value轉換成session中的key-value

vii. map getsession():獲取session中的資料

二、通過實現struts2的如下介面來實現,在action中直接呼叫servletapi,如果能使用actioncontext實現的功能就不要使用此類方法

a) servletcontextaware:用於在action中直接訪問servletcontext物件

b) servletrequestaware:用於在action中直接訪問httpservletrequest物件

c) servletresponesaware:用於在action中直接訪問httpservletresponse物件

使用方法:

public

classtestactionextendsactionsupport

implements

servletcontextaware,

servletrequestaware,servletresponseaware{}

三、action的配置

在struts2的配置檔案

struts.xml

中,通過

元素來註冊業務

action

物件,並通過其子元素

來指定邏輯檢視和物理檢視的對映關係

例項如下:

四、action元素的基本屬性

a) name:用於指定業務

action

的名稱,同時也是業務

action

要處理的請求路徑對映

b) class:

action

的實現類,如果沒有指定該屬性,框架將使用預設的實現類

actionsupport

c) method:用於將乙個

action

的實現類在框架中定義成多個不同的邏輯

action

,指定此情況將不會呼叫

action

中的execute

方法,而是呼叫其屬性值指定的方法

五、在action配置中使用萬用字元

a) action元素的

name

屬性支援萬用字元的使用,

class

屬性和method

屬性支援表示式,採用此種方式也可以完成為乙個業務

action

實現類配置多個邏輯

action

的情況b) 語法:

i. ii. 

iii. 

此處的含義為使用*位置的值充當的值

六、配置預設action

a) 作用:給沒有指定對映路徑的請求乙個預設的處理業務

b) 語法:

i. 首先在

中定義乙個

action

ii. 然後使用

名稱」/>定義預設

action

,此元素寫在

中iii. 名稱」/>必須寫在所有的之前

七、配置處理結果(區域性)

a) 元素用於指定某乙個

action

處理結果的邏輯檢視名稱和對應的物理檢視名稱的對映關係

b) 語法:

c) 屬性的含義:

i. result的

name

:用於指定邏輯檢視名,即業務

action

返回值ii. type:用於指定

struts2

支援的檢視型別

iii. param元素的

location

用於指定物理檢視的位址

注意:如果不寫name預設為

success

,不寫type

預設為dispatcher

,訪問jsp檢視

八、配置處理結果(全域性)

a) 用於指定某個包中所有

action

共用的處理結果,寫在

元素中b) 語法:

九、常用的result元素的

type

型別a) dispatcher:

jsp結果型別(預設值)

b) velocity:整合

velocity

結果型別

c) plaintext:顯示某個頁面原始**的結果型別

d) xslt:整合

xml/xslt

結果型別

e) chain:用於**

action

的型別

Struts2訪問Servlet API的三種方式

struts2訪問servletapi的方式有 解耦合方式和耦合方式 通過actioncontext類來實現。但是只能獲得request物件,而得不到response物件。actioncontext是action的上下文物件,action執行期間所用到的資料都儲存在actioncontext中,例如...

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...