首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> JSP 程式設計 >> 關於JSP

JSP與JavaBean入門教程(二):三大標準動作標籤詳解

     編輯:關於JSP

核心標籤三劍客

JSP 規範定義了三個標準動作標籤實現 JavaBean 交互,掌握它們是開發 JSP+JavaBean 應用的基石:

  1. <jsp:useBean> — 聲明並實例化 Bean
  2. <jsp:setProperty> — 設置 Bean 屬性值
  3. <jsp:getProperty> — 獲取 Bean 屬性值並輸出

<jsp:useBean> 完整語法與屬性

<jsp:useBean id="name"
    scope="page|request|session|application"
    typeSpec>
    body
</jsp:useBean>

typeSpec 可選組合:

  • class="className"
  • class="className" type="typeName"
  • type="typeName" class="className"
  • beanName="beanName" type="typeName"
  • type="typeName" beanName="beanName"
  • type="typeName"
屬性含義
idBean 實例唯一標識,在指定 scope 內唯一
scope生命周期:page/request/session/application
classBean 完整類名(含包名),區分大小寫
beanName通過 java.beans.Beans.instantiate() 實例化
type腳本變量類型,默認與 class 一致

執行邏輯:容器先在指定 scope 查找同 id 實例,存在則復用;否則按 class/beanName 創建新實例。

<jsp:setProperty> 屬性賦值機制

<jsp:setProperty name="beanName" last_syntax />

last_syntax 四種形式:

  • property="*" — 自動匹配請求參數與同名屬性,批量賦值
  • property="propertyName" — 單屬性賦值,值來自同名請求參數
  • property="propertyName" param="parameterName" — 指定請求參數名
  • property="propertyName" value="propertyValue" — 直接指定常量值

注意:param 與 value 不能同時使用。property="*" 是表單處理的利器,能大幅減少樣板代碼。

<jsp:getProperty> 取值輸出

<jsp:getProperty name="name" property="propertyName" />

將指定屬性值轉為 String 寫入隱含 out 對象。前提:Bean 實例必須已通過 <jsp:useBean> 聲明。

最佳實踐建議

  • 優先使用 <jsp:setProperty property="*"> 處理表單提交
  • 展示層盡量用 <jsp:getProperty> 替代 Scriptlet,保持頁面整潔
  • 根據數據共享需求合理選擇 scope,避免內存洩漏
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved