999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

淺析基于JSP技術的JavaBean和Servlet

2015-01-10 07:49:40劉曉崢
科技視界 2015年34期
關鍵詞:可視化程序方法

劉曉崢

(長江工程職業技術學院,湖北 武漢 430212)

隨著web 技術的出現,早期網絡的集中計算逐漸被分布式計算所代替。Web 技術是一種分布式計算技術,使用這種技術構建企業應用時,通常需要開發大量的程序,這些程序部署在不同的計算機上,它們在應用中承擔不同的職責。例如,根據功能不同可以分為用戶界面展示、邏輯計算、數據處理。其中用戶界面展示一般由動態網頁完成。JSP技術就是一種動態網頁技術標準。它是在傳統的網頁HTML 文件中插入Java 程序段和JSP 標記,從而形成JSP 文件。而邏輯計算和數據處理則是在后臺由Java 程序寫成的功能代碼來完成,這些獨立代碼模塊就是servlet,運行在服務器上。同時又經常用JavaBean 來封裝事務邏輯。這樣可以實現前臺展示、業務邏輯、數據庫操作三者的分離,使系統變得健壯和靈活。而初學者常面對的問題就是不知道如何理解servlet 與JavaBean 二者的區別。本文就從多個方面來闡述說明二者的用法。

1 servlet

1.1 概念

Servlet 實際上是Server+Applet 的意思,全稱Java Servlet。是用Java 編寫的服務器端程序。狹義的Servlet 是指Java 語言實現的一個接口,廣義的Servlet 是指任何實現了這個Servlet 接口的類,一般情況下,人們將Servlet 理解為后者。

Servlet 運行于支持Java 的應用服務器中。從實現上講,Servlet 可以響應任何類型的請求,但絕大多數情況下Servlet 只用來擴展基于HTTP 協議的Web 服務器。最早支持Servlet 技術的是JavaSoft 的Java Web Server。此后,一些其它的基于Java 的Web Server 開始支持標準的Servlet API。Servlet 的主要功能在于交互式地瀏覽和修改數據,生成動態Web 內容。實現過程如下:

1)客戶端發送請求至服務器端;

2)服務器將請求信息發送至Servlet;

3)Servlet 生成響應內容并將其傳給服務器。響應內容動態生成,通常取決于客戶端的請求;

4)服務器將響應返回給客戶端。

1.2 生命周期

每個servlet 模塊有其生命周期。一般過程如下:

1)客戶端請求該Servlet;

2)加載Servlet 類到內存;

3)實例化并調用init()方法初始化該Servlet;

4)service()(根據請求方法不同調用doGet()或者doPost(),此外還有doGet()、doPut()、doTrace()、doDelete()、doOptions());

5)destroy()。

在這個過程中,加載和實例化Servlet 這項操作一般是動態執行的。然而,Server 通常會提供一個管理的選項,用于在Server 啟動時強制裝載和初始化特定的Servlet。第一個客戶端的請求到達Server,Server 調用Servlet 的init()方法(可配置為Server 創建Servlet 實例時調用,在web.xml 中<servlet>標簽下配置<load-on-startup>標簽,配置的值為整型,值越小Servlet 的啟動優先級越高)。之后Server 創建一個請求對象,處理客戶端請求,再創建一個響應對象,響應客戶端請求。

Servlet 的service()方法很重要,它將傳遞請求和響應對象作為參數,獲得關于請求對象的信息,處理請求,訪問其他資源,獲得需要的信息。它使用響應對象的方法,將響應傳回Server,最終到達客戶端。service()方法可能激活其它方法以處理請求,如doGet()或doPost()或程序員自己開發的新的方法。

對于更多的客戶端請求,Server 創建新的請求和響應對象,仍然激活此Servlet 的service()方法,將這兩個對象作為參數傳遞給它。如此重復以上的循環,但無需再次調用init()方法。一般Servlet 只初始化一次(只有一個對象),當Server 不再需要Servlet 時(一般當Server關閉時),Server 調用Servlet 的destroy()方法。

我們可以在eclipse 等開發平臺中直接創建web 工程,平臺工具可以自動對項目進行組織和部署。Servlet 和頁面文件分開存儲,使項目結構清晰,也實現了軟件分層架構模型。

1.3 servlet 優勢

1)方便

Servlet 提供了大量的實用工具例程,例如自動地解析和解碼HTML 表單數據、讀取和設置HTTP 頭、處理Cookie、跟蹤會話狀態等。

2)功能強大

在Servlet 中,許多使用傳統CGI 程序很難完成的任務都可以輕松地完成。例如,Servlet 能夠直接和Web 服務器交互,而普通的CGI程序不能。Servlet 還能夠在各個程序之間共享數據,使得數據庫連接池之類的功能很容易實現。

3)可移植性好

Servlet 用Java 編寫,Servlet API 具有完善的標準。幾乎所有的主流服務器都直接或通過插件支持Servlet。

2 JavaBean

2.1 概念

JavaBean 是使用Java 語言描述的軟件組件模型,簡單地說,它就是一個可以重復使用的Java 類。JavaBean 可分為可視化組件和非可視化組件,其中可視化組件包括簡單的GUI 元素(例如,文本框、按鈕)及一些報表組件等。非可視化組件是在實際開發中經常被使用到的并且在應用程序中起著至關重要的作用。其主要功能是用來封裝業務邏輯(功能實現)、數據庫操作(例如,數據處理、連接數據庫)等。

在實際的開發過程中,通常會出現重復的代碼或者段落,此時就會大大降低程序的可重用性并且浪費時間。使用JavaBean 就可以大大簡化程序的設計過程并且方便了其它程序的重復使用。JavaBean 在服務器端的應用具有非常強大的優勢,非可視化的JavaBean 可以非常好地實現控制邏輯、業務邏輯、表示層之間的分離,從而大大降低了它們之間的耦合度。非可視化的JavaBean 現在多用于后臺處理,這樣會使系統具有一定的靈活性。

2.2 JavaBean 規范

編寫JavaBean 就是編寫一個Java 的類,這個類創建的一個對象稱作一個Bean。為了能讓使用這個bean 的應用程序構建工具(比如JSP 引擎)知道這個bean 的屬性和方法,只需在類的方法命名上遵守以下規則:

1)如果類的成員變量的名字是xxx,那么為了更改或獲取成員變量的值,即更改或獲取屬性,在類中可以使用兩個方法:

◆getXXX():用來獲取屬性xxx。

◆setXXX():用來修改屬性xxx.。

2)對于boolean 類型的成員變量,即布爾邏輯類型的屬性,允許使用"is“代替上面的"get"和"set"。

3)類中方法的訪問屬性都必須是public 的。4)類中包含公共無參構造方法

3 servlet 與JavaBean 的區別

Servlet 和JavaBean 都是用Java 語言寫的程序模塊,在服務器運行,但二者的實際意義和使用層面是不同的。JavaBean是一個普通的Java 類,里面為屬性增加了getter 和setter 進行封裝并提供默認構造。而Servlet 應當只在展示層存在。在一個完整MVC 模式 中,JavaBean、servlet、JSP分別對應M(model)、C(controller)、V(view)三個層面。舉例:servlet 查詢數據庫——JavaBean 保存查詢結果——JSP 顯示查詢結果。

Servlet 是只能在JavaEE 容器中存活的特殊Java 類,就像是魚缸里的魚,沒有容器Servlet 是不能生存的。而JavaBean 則可以脫離JavaEE 環境單獨存在,按照Sun 公司的說法,既可以用在客戶端,也可以用在服務器端。另外,根據上文對于二者規范的說明,也可以明顯看出,二者在程序語句方面的規范與實現的接口有很大區別。Servlet需要生命周期框架,而JavaBean 并不需要。

4 結束語

Servlet 與JavaBean 是JSP 技術乃至J2EE 平臺中很常用的技術。掌握二者的編程規范、工作層面和區別,才能編寫出功能明確、結構正確的web 項目。

[1]王先國.JSP 基礎與編程實踐[M].清華大學出版社,2012,1.

[2]李迎秋.JSP 實用教程[M].大連理工大學出版社,2008.2.

[3]javaBean 和Servlet 的 區 別.http://blog.sina.com.cn/s/blog_71c1942e01013gsb.html[OL].

猜你喜歡
可視化程序方法
基于CiteSpace的足三里穴研究可視化分析
基于Power BI的油田注水運行動態分析與可視化展示
云南化工(2021年8期)2021-12-21 06:37:54
基于CGAL和OpenGL的海底地形三維可視化
“融評”:黨媒評論的可視化創新
傳媒評論(2019年4期)2019-07-13 05:49:14
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
用對方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
創衛暗訪程序有待改進
中國衛生(2015年3期)2015-11-19 02:53:32
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
主站蜘蛛池模板: a欧美在线| 国产美女无遮挡免费视频| 中国一级特黄视频| 99久久国产综合精品女同| 狠狠做深爱婷婷久久一区| 91在线国内在线播放老师| 久久久久亚洲AV成人人电影软件| 区国产精品搜索视频| 国产人成在线视频| 国产制服丝袜91在线| 国模极品一区二区三区| 久久国产精品娇妻素人| 区国产精品搜索视频| 国产成人区在线观看视频| 免费人欧美成又黄又爽的视频| 粉嫩国产白浆在线观看| 91福利在线看| 国产精品美乳| 91在线中文| 亚洲中文在线看视频一区| 成人午夜免费观看| 中文字幕av一区二区三区欲色| 亚洲系列中文字幕一区二区| 91高清在线视频| 日韩黄色大片免费看| 日韩免费视频播播| 成人国产一区二区三区| 72种姿势欧美久久久大黄蕉| 奇米影视狠狠精品7777| 中文字幕在线不卡视频| 国产精品无码久久久久久| 成年人午夜免费视频| 久久久久人妻精品一区三寸蜜桃| 国产成人8x视频一区二区| 日韩欧美国产另类| 久久伊人操| 国产欧美另类| 女人18毛片久久| 国产黄网永久免费| 亚洲成综合人影院在院播放| 久久77777| 亚洲成人黄色在线观看| 欧美一级大片在线观看| 嫩草在线视频| 高清大学生毛片一级| 久久伊伊香蕉综合精品| 日本国产精品一区久久久| 久久久久人妻一区精品| 免费人成网站在线观看欧美| 网久久综合| 99在线国产| 沈阳少妇高潮在线| 在线观看免费国产| 精品国产欧美精品v| 日韩午夜伦| 国产精品无码AV片在线观看播放| 波多野结衣一二三| 国产乱人伦AV在线A| 国产精品毛片一区| 岛国精品一区免费视频在线观看 | 98精品全国免费观看视频| 欧美综合区自拍亚洲综合天堂| 欧美亚洲国产精品久久蜜芽| 福利在线不卡| 日韩经典精品无码一区二区| 久草视频中文| 精品视频一区在线观看| 在线观看国产黄色| 亚洲中文字幕在线观看| 麻豆AV网站免费进入| 国产免费精彩视频| 欧美中文字幕在线播放| 婷婷综合在线观看丁香| 欧美性精品| 国产91麻豆免费观看| 最新日韩AV网址在线观看| 澳门av无码| 久久亚洲中文字幕精品一区 | 国产在线视频欧美亚综合| 国产又大又粗又猛又爽的视频| 亚洲欧美综合另类图片小说区| 91免费在线看|