struts1配置檔案中action的常用屬性

2021-07-31 12:03:54 字數 3189 閱讀 7102

首先列舉action的屬性**如下:

type="actionclass"

name="userform"

scope="request"

attribute="key"

input="/register.jsp"

forward="/index.jsp"

include="/index.jsp"

unknown="true"

parameter="test"

validate="true">

下面對其屬性解析:

path:

代表請求的

action

的名稱,

無需指明字尾

struts1

自動處理

type:

代表請求的

action

交給哪個

action處理,

注意此類的名稱一定是類的全名稱

(包括包名

)。name

:代表的是請求引數封裝的

actionform

的名稱。

備註:此名稱與名稱

form"

type="

form

類的全名

">中"

名稱form

"一致,並通過此form-bean中的type來指定封裝的actionform類。

scope

:代表把

formbean

的引數封裝到那個作用域中

,預設的作用域為

session。

備註:當我們沒有指定formbean的作用域時,在type指定的action類中還可以通過以下**獲取:

userform userform = (userform) form;

/*** 由於在action的屬性配置中的scope屬性指定了userform的作用域, 當採用的是預設值(session)時,

* 也可以直接從作用域中獲取**如下:

userform userform = 

*(userform)request.getsession().getattribute(

"userform"

);*/

/**備註:

由於在開發

中為了節省

actionform

占用的記憶體空間,

一般採用

scope=」request」配置,

因此也可以採用一下的方式獲取

*/userform userform = (userform) request.getattribute("userform");

注意:若aciton的配置中沒有配置attribute="key" 屬性時,在action中獲取的關鍵字採用預設的值及name的名稱,當配置了attribute="key"屬性時,必須通過"key"獲取。

attribute:

指定formbean

儲存的key,

不設預設為

name

屬性的值。

舉例:如果在action的配置中配置了attribute=」uform」,在action中獲取的方式應該為:

/** 通過方法引數中傳遞的actionform獲取actionform中的物件

並強制造型為

userform */

userform userform = (userform) form;

/**由於在action的配置中指明了attribute的屬性及屬性值,因此應該採用以下方式獲取*/

userform userform = (userform) request.getattribute("uform");

input="/register.jsp" 

指定formbean

的資料是由哪個頁面提供的。

說明:提供此屬性的目的在於formbean校驗失敗時,程式方便跳回formbean的輸入頁面,通過struts1錯誤資訊標籤,顯示校驗失敗資訊。

forward="/index.jsp" 

指定收到請求時,跳轉到相應的jsp頁面。

強調:如果配置了此屬性,則action將不再被呼叫,即接受到此action時,直接調至到index.jsp頁面。

include="/index.jsp" 

指定收到請求時,進行頁面包含。

unknown="true" 

如果action

把該屬性設定為

true

,則它可以處理客戶機發出的所有無效的

.do請求,預設值為

false。

舉例:如果在配置檔案中新增如下的

action配置,

如果在此配置檔案中找不到regi.do的action就會處理上面配置的action直接跳轉到index.jsp頁面 (備註:與此action中path名稱無關,但必須配置乙個path屬性)。

parameter="test" 

配置action引數,

呼叫方法可以獲得這裡配置的引數。

classname="

" 標籤和所有的配置資訊使用哪個物件封裝,預設值為

物件。validate="true" 

請求引數封裝到

formbean

中後,是否讓

struts

自動呼叫

formbean

的validate

方法進行資料校驗,預設

true。

forward標籤

在action

配置中,

還有一些其他的標籤配置,

即在處理完此

action

之後可以在

action

中的execute

方法中通過此標籤的

name

屬性獲取此

action,

並跳轉到相應的

path

位址中。

舉例:如果在

action

內部我們配置了

forward

標籤的**如下:

那麼可以再action返回值中做如下處理:

/** 獲取跳轉的位址並返回actionforward */

通過以上配置,在處理完此action後,struts1經過處理後就會跳轉到/message.jsp檢視層

學習struts1(配置檔案)

最近在用struts1與oracle資料庫一起做東西,在工作中發現自己原來還是乙個菜鳥,有許多東西還要去學,邊學邊用,一步一步往前走呀,不多說了,今天總結了struts1的核心配置檔案 struts config.xml。我也是在學習總結,有什麼說的不對的地方,還希望大家給我指出來呀。action類...

struts1配置檔案之input

訪問edit方法的時候,使用這個 editperson.do?method edit 此時input就是 edit.jsp input register.jsp 指定formbean 的資料是由哪個頁面提供的。說明 提供此屬性的目的在於 formbean 校驗失敗時,程式方便 跳回formbean ...

struts1中配置應用

列表收集id集合時,在formbean中放乙個string selectflag 陣列,這時提交時formbean會自動收集 function deleteuser if flag if window.confirm 確認刪除嗎?直接將值放到request中,前台用el或標籤顯示出來 beanuti...