Java EE JavaBean組件

来源:http://www.cnblogs.com/wangcj2015/archive/2017/12/17/8052931.html
-Advertisement-
Play Games

一、簡介 JavaBean組件是一些可移植、可重用並可組裝到應用程式中的Java類,類必須是具體的和公共的。 符合下列設計規則的任何Java類均是以JavaBean: 1.對數據類型“protype”的每個可讀屬性,Bean下必須有下麵簽名的一個方法:public proptype getPrope ...


一、簡介

JavaBean組件是一些可移植、可重用並可組裝到應用程式中的Java類,類必須是具體的和公共的。

符合下列設計規則的任何Java類均是以JavaBean:

1.對數據類型“protype”的每個可讀屬性,Bean下必須有下麵簽名的一個方法:public proptype getProperty(){}

2.對數據類型“protype”的每個可寫屬性,Bean下必須有下麵簽名的一個方法:public void setProperty(proptype x){}

3.定義一個不帶任何參數的構造函數。

二、JavaBean與JSP的結合

JSP在動態Web應用開發中得到了越來越多的應用,JSP提供的9個內置對象極大的方便了JSP頁面的控制與開發,但由於應用程式功能要求越來越強,JSP頁面變得越來越臃腫且難以控制。也正因如此JSP與JavaBean相結合逐漸成為最常見的Web應用程式開發方式。

(一)、JSP中JavaBean相關標記

JSP頁面中與JavaBean有關的標記有<jsp:useBean>、<jsp:setProperty>和<jsp:getProperty>三個。

(1)、<jsp:useBean>

該標記聲明一JavaBean實例,該實例具有一定生存範圍及一個唯一id,JSP頁面通過這個唯一的id來識別JavaBean並通過id.method類似語句操作JavaBean。

eg:聲明類Student,id為s1。

1 <jsp:useBean id="s1" class="Student" scope="application"></jsp:useBean>

scope屬性值指明JavaBean的作用域,其預設值為page。

(2)、<jsp:setProperty>

該標記用於設定一個已經被創建的JavaBean組件的屬性值。

eg:設定Student組件s1的classno屬性

1 <jsp:setProperty name="s1" property="classno" value="56789"></jsp:setProperty>

name屬性值對應JavaBean組件的id值;property屬性指定想設定屬性值的屬性名;value屬性指定屬性值,該值可為字元串也可為表達式。

(3)、<jsp:getProperty>

該標記用於返回一個已經被創建的JavaBean組件的屬性值。

eg:獲取Student組件s1的name屬性的屬性值

1 <jsp:getProperty name="s1" property="name"></jsp:getProperty>
2 等價於:
3 <%=s1.name %>

(二)、JavaBean的Scope屬性說明

每個JavaBean均有一個生存範圍,而每個JavaBean只能在它定義的範圍中才可使用,在其定義的範圍外將無法訪問。

<jap:useBean>利用Scope屬性來聲明JavaBean的生存範圍。

JSP為JavaBean設定的範圍可以是:page、request、session及application。

(1)、page

page是JavaBean預設生存範圍。

Scope值為page的JavaBean能在包含"<jsp:useBean>"元素的JSP文件及此文件中的所有靜態包含文件中使用,直至頁面執行完畢向客戶端發迴響應或轉到另一文件為止。

(2)、request

Scope值為request的JavaBean作用於任何相同請求的JSP文件中,直至頁面執行完畢向客戶端發迴響應或在此之前已經通過某種方式(重定向、鏈接等)轉到另一文件為止。

還可通過使用request對象訪問JavaBean。

(3)、session

Scope值為session的JavaBean,從創建JavaBean開始,就能在任何使用相同session的JSP文件中使用這個Bean,該Bean存在於整個session生存期內,任何分享此session的JSP文件都能使用同一Bean。

在session的生存周期內,對該Bean的任何改動均會影響到在此session內的任意page、request對該Bean的調用。當然前提是必須在創建此Bean的文件里事先用page指令指定了session=true。

(4)、application

Scope值為application的JavaBean,作用於整個application的生存周期內,從創建Bean開始就能在任何使用相同application的JSP文件中使用Bean。在該Bean存在於整個application生存周期內,任何分享此application的JSP文件均能使用同一Bean。在application生存周期內,對此Bean屬性的任何改動均會影響到此application內另一page、另一request及另一session里對該JavaBean的調用。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • File類總結 File類概述 Java.io.File類 文件和目錄路徑名的抽象表示形式。 把電腦中的文件和文件夾(目錄)封裝成了一個File對象,通過File對象中的方法可以操作文件和文件夾; 是一個與系統無關的類,任意的操作系統都可以使用這個類中的方法操作文件和文件夾 3個File類有關的單詞 ...
  • 1.C++標準庫和STL C++標準庫以header files形式呈現: (1)C++標準庫的header files不帶尾碼名(.h),例如#include (2)新式C header files 不帶尾碼名.h,例如#include (3)舊式C header files (帶有尾碼名.h)仍... ...
  • 首先,找齊Spring框架中IoC功能、aop功能、JdbcTemplate功能所需的jar包,當前13個Jar包 1、Spring壓縮包中的四個核心JAR包,實現IoC控制反轉的根據xml配置文件或註解生成對象 beans 、context、core 和expression 下載地址: https ...
  • Part VII. Spring Cloud Sleuth 46. Introduction Spring Cloud Sleuth為Spring Cloud實現了分散式的跟蹤解決方案 46.1 Terminology Spring Cloud Sleuth借用了Dapper的術語 Span: 基本 ...
  • 相信各位都在在網上買過東西吧?那麼今天我的主題就是寫個線上購物系統,是不可能的,哈哈(後期確實有這個項目),那麼購物都填寫過快遞地址吧?然後網上查個地址都有地址管理吧? 要求: 1.列印出省、市、縣等多級目錄 2.每一級可以返回到上一級,第一級不能再往上返回 3.可以隨時退出系統 分析: 1.簡單的 ...
  • 使用fmsb包繪製雷達圖 {r} library("fmsb") radarfig ...
  • 1.解釋器路徑 2.編碼 1.ascill 00000000 (8個位表示) 缺點:表示不了英文 2.unicode 0000000000000000+ (至少16位表示) 缺點:消耗記憶體,當表示位不需要16位以上,造成多餘記憶體消耗 Python3 無需關註 Python2 每個文件中只要出現中文, ...
  • [TOC] 一、簡介 java中的日期處理一直是個問題,沒有很好的方式去處理,所以才有第三方框架的位置比如joda。 文章主要對java日期處理的詳解,用1.8可以不用joda。 1. 相關概念 首先我們對一些基本的概念做一些介紹,其中可以將GMT和UTC表示時刻大小等同。 1.1 UT時間 UT反 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...