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