內蒙古java團隊

          j2se,j2ee開發組
          posts - 139, comments - 212, trackbacks - 0, articles - 65
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          在JSP頁面中的應用JavaBean [轉]

          Posted on 2010-04-15 23:04 帥子 閱讀(232) 評論(0)  編輯  收藏 所屬分類: J2EE技術專區

          JavaBean 是一種基于 Java的軟件組件。JSP 對于在 Web 應用中集成 JavaBean 組件提供了完善的支持。這種支持不僅能縮短開發時間(可以直接利用經測試和可信任的已有組件,避免了重復開發),也為 JSP 應用帶來了更多的可伸縮性。

          JavaBean 組件可以用來執行復雜的計算任務,或負責與數據庫的交互以及數據提取等。如果我們有三個 JavaBean ,它們分別具有顯示新聞、股票價格、天氣情況的功能,則創建包含所有這三種功能的 Web 頁面只需要實例化這三個 Bean ,使用 HTML 表格將它們依次定位就可以了。

          為說明在 JSP 環境下 JavaBean 的應用,我們創建了一個名為 TaxRate Bean 。它有兩個屬性,即 Product(產品)和 Rate (稅率)。兩個 set 方法分別用來設置這兩個屬性,兩個 get 方法則用于提取這兩個屬性。在實際應用中,這種 Bean 一般應當從數據庫提取稅率值,此處我們簡化了這個過程,允許任意設定稅率。下面是這個 Bean 的代碼清單:

          1.??????????? package?tax;? ?

          2.???????????   ?public?class?TaxRate?{? ?

          3.???????????   ?String?Product;? ?

          4.???????????   ?double?Rate;? ?

          5.???????????   ?public?TaxRate()?{? ?

          6.???????????   ? this.Product ?=? "A001" ;? ?

          7.???????????   ? this.Rate ?=? 5 ;? ?

          8.???????????   ?}? ?

          9.???????????   ?public?void?setProduct?(String?ProductName)?{? ?

          10.???????   ? this.Product ?=? ProductName ;? ?

          11.???????   ?}? ?

          12.???????   ?public?String?getProduct()?{? ?

          13.???????   ?return?(this.Product);? ?

          14.???????   ?}? ?

          15.???????   ?public?void?setRate?(double?rateValue)?{? ?

          16.???????   ? this.Rate ?=? rateValue ;? ?

          17.???????   ?}? ?

          18.???????   ?public?double?getRate?()?{?

          19.???????   ?return?(this.Rate);?

          20.???????   ?}?

          21.???????   ?}?

          JSP 頁面中應用上述 Bean 要用到 < jsp:useBean> 標記。依賴于具體使用的 JSP 引擎的不同,在何處配置以及如何配置 Bean 的方法也可能略有不同。本文將這個 Bean .class 文件放在 c:.0INF目錄下,這里的 tax 是一個專門存放該 Bean 的目錄。下面是一個應用上述 Bean 的示例頁面:

          22.??????? ??< ? HTML> ? ?

          23.???????   ? < ? BODY> ? ?

          24.???????   ? < ?%@?page? language = "java" ?% > ? ?

          25.???????   ? < ? jsp:useBean ? id = "taxbean" ? scope = "application" ? class = "tax.TaxRate" ? /> ? ?

          26.???????   ? < ?%?taxbean.setProduct("A002");? ?

          27.???????   ?taxbean.setRate(17);? ?

          28.???????   ?% > ? ?

          29.???????  使用方法 ?1? ? < ? p> ? ?

          30.???????  產品 ?:? < ?%=?taxbean.getProduct()?% > ? < ? br> ? ?

          31.???????  稅率 ?:? < ?%=?taxbean.getRate()?% > ? ?

          32.???????   < ? p> ? ?

          33.???????   < ?%?taxbean.setProduct("A003");? ?

          34.???????   taxbean.setRate(3);? ?

          35.???????   % > ? ?

          36.???????   < ? b> ? 使用方法 ?2? ? < ?/b > ? < ? p> ? ?

          37.???????  產品 ?:? < ? jsp:getProperty ? name = "taxbean" ? property = "Product" ? /> ? ?

          38.???????   < ? br> ? ?

          39.???????  稅率 ?:? < ? jsp:getProperty ? name = "taxbean" ? property = "Rate" ? /> ? ?

          40.???????   < ?/BODY > ? ?

          41.???????   < ?/HTML > ?

          < jsp:useBean > 標記內定義了幾個屬性,其中 id 是整個 JSP 頁面內該 Bean 的標識, scope 屬性定義了該 Bean 的生存時間, class 屬性說明了該 Bean 的類文件(從包名開始)。

          這個 JSP 頁面不僅使用了 Bean set get 方法設置和提取屬性值,還用到了提取 Bean 屬性值的第二種方法,即使用 < jsp:getProperty > 標記。 < jsp:getProperty > 中的 name 屬性即為 < jsp:useBean > 中定義的 Bean id ,它的 property 屬性指定的是目標屬性的名字。

          事實證明,Java Servlet 是一種開發 Web 應用的理想構架。JSP Servlet 技術為基礎,又在許多方面作了改進。 JSP 頁面看起來象普通 HTML 頁面,但它允許嵌入執行代碼,在這一點上,它和 ASP 技術非常相似。利用跨平臺運行的 JavaBean 組件,JSP 為分離處理邏輯與顯示樣式提供了卓越的解決方案。

          主站蜘蛛池模板: 霍城县| 平果县| 革吉县| 方城县| 五大连池市| 荆门市| 巴林右旗| 静安区| 保靖县| 浦县| 凤翔县| 隆子县| 巫溪县| 灵山县| 蓝山县| 孝感市| 东阳市| 五台县| 昌黎县| 白河县| 揭东县| 随州市| 大宁县| 新竹市| 天峨县| 阿拉善左旗| 页游| 株洲市| 顺义区| 龙山县| 民和| 绍兴县| 红桥区| 枞阳县| 剑川县| 潞城市| 五华县| 甘泉县| 亚东县| 景宁| 河西区|