關於在多個Action之間傳遞引數

2021-06-14 01:42:55 字數 2417 閱讀 7894

**:

使用chain的方式會保留請求引數,這毫無疑問。

<

action

name

="addcommentpro"

class

="addcommentaction"

>

<

interceptor-ref

name

="authoritystack"/

>

<

result

type

="chain"

>viewcommentpro

result

>

action

>

當使用redirectaction時,會發生重定向,引數會丟失,可以使用以下兩種方式傳遞引數,兩種方法下目標action都必須有對應屬性的getter,setter方法

param方式:

<

action

name

="addcommentpro"

class

="addcommentaction"

>

<

interceptor-ref

name

="authoritystack"

>

interceptor-ref

>

<

result

type

="redirectaction"

>

<

param

name

="actionname"

>viewcommentpro

param

>

<

param

name

="aid"

>$

param

>

result

>

action

>

直接傳遞:

<

action

name

="addcommentpro"

class

="addcommentaction"

>

<

interceptor-ref

name

="authoritystack"

>

interceptor-ref

>

<

result

type

="redirectaction"

>viewcommentpro?aid=$

result

>

action

>

從上面看出,在struts.xml裡呼叫ognl表示式並不是使用%{}而是使用${},這和el表示式在jsp頁面中的用法一樣。

順便複習下struts2中#,$和%的用法

<

s:iterator

value

="#request.articles"

id="a"

status

="s"

>

<

tr>

<

td><

s:property

value

="#s.index"

/>

td>

<

td class

="title"

><

s:property

value

="#a.title"

/>

td>

<

td class

="content"

><

s:property

value

="#a.content"

/>

td>

<

td class

="username"

><

s:property

value

="#a.user.username"

/>

td>

<

td><

s:a

action

="deletepro?id=%"

>刪除

s:a>

td>

tr>

s:iterator

>

<

td><

s:a

action

="deletepro?id=%"

>刪除

s:a>

td>

順便再複習下,el表示式語法$

在Activity之間傳遞資料

在乙個activity中啟動另乙個activy,取得資料,如 在應用 a 中啟動 通訊錄,選擇目標使用者,返回,以便在a 中使用選擇的通訊錄資料,基本過程如下 intent intent new intent 開啟pictures畫面type設定為image intent.settype image...

Strut2 action之間的多個引數傳遞

今天遇到乙個問題,在webwork 2.2裡面給乙個action的result傳多個引數 原先配置如下 some.action?field1 field2 some.action?field1 field2 下邊是另外乙個人的 今天在用struts2在做專案時候,從乙個action我想跳轉到另乙個a...

關於乙個Action對應多個Form

由於乙個action可以用多個path來訪問,所以我們可以通過在struts config.xml中配置一下action來達到乙個action來對應多個form。下面是乙個action對應多個form的 struts config.xml的配置 type com.mac.struts.form.in...