Struts2 set標籤:定義一個變數

2020-07-16 10:04:58
set 標籤用於定義一個變數。通過此標籤可以給定義的變數賦值,以及設定變數的作用域(application、request、session)。在預設情況下,通過set標籤所定義的變數被放置到值棧中。

語法:

<s:set name="name" value="user.username"/>
<!--將表示式user.username的值儲存到session範圍中-->
<s:set name="name" value="user.username" scope="session"/>


set 標籤的屬性說明如表所示。

set 標籤屬性及說明
名稱 是否必須 型別 說明
scope 可選 String 設定變數的作用域,它的值可以是application、request、session、page或action,預設值為action
value 可選 String 設定變數的值
var 可選 String 定義變數的名稱

範例

在頁面中參照 <s:set> 標籤,設定 scope 屬性,限定引數的適用範圍。

建立一個 Action 檔案,在其中設定需要的資料和處理程式碼。

建立 jsp 檔案,在其中參照 set 標籤,並對 scope 屬性設定不同的屬性值,關鍵程式碼如下:
<body>
  <!--將表示式user.username的值儲存在預設範圍中,即action範圍-->
  <s:set name="name" value="user.username"/>
  <h4>從預設的action上下文中取出name</h4>
  <s:property value="#name"/>
  <!--將表示式user.username的值儲存到session範圍中-->
  <s:set name="name" value="user.username" scope="session"/>
  <h4>設定了Session範圍中的值並從session範圍中取出name</h4>
  <s:property value="#session.name"/>
</body>