Struts2 bean標籤:建立並範例化一個JavaBean物件

2020-07-16 10:04:57
bean 標籤也是一個十分常用的標籤,它與 JSP 中的 <jsp:useBean> 動作類似,主要用於建立並範例化一個 JavaBean 物件,對於 JavaBean 中的屬性可以通過 param 標籤對其賦值。

語法:

<s:bean name="fe.zx.Person">
  <s:param name="username"value="'mr'"/>//子標籤
  <s:property value="password"/>
</s:bean>

在 Struts2 框架中,通過 bean 標籤範例化的 JavaBean 物件將被放入 OGNLContext 中,如果在 bean 標籤內部呼叫 JavaBean 物件,此時,JavaBean 範例處於值棧的頂部,可以直接呼叫。如果在 bean 標籤外部呼叫 JavaBean 物件,JavaBean 範例則不處於值棧的頂部,需要通過“#”號呼叫。

引數說明:
  • name:必選屬性,用於宣告JavaBean物件的完整類名。
  • var:可選屬性,參照JavaBean的名稱。

範例

本範例在頁面中應用 <s:bean> 標籤為 JavaBean 傳遞引數,獲取 JavaBean 中的屬性值並顯示。
建立一個 JavaBean 檔案,在其中定義變數和生成 get 和 set 方法,關鍵程式碼如下:
public class Person{
  private String username;
  private String password;
  public String getUsername(){
    return username;
  }  //省略部分get和set方法
}

建立 jsp 檔案,在檔案中參照 bean 標籤和使用的相應子標籤,關鍵程式碼如下:
<body>  //應用bean標籤
  <s:bean name="fe.zx.Person">  //使用對應的子標籤進行引數傳遞
    <s:param name="username" value="'mr'"/>
    <s:param name="password" value="'mrsoft'"/>
    你好!<s:property value="username"/>,您的使用者名稱是:<s:property value="username"
                                                         /><br>,並請牢記您的密碼是:<s:property value="password"/>
  </s:bean>