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
主站蜘蛛池模板: 中国一级毛片免费观看| 国产精品吹潮在线观看中文| 国产剧情一区二区| 亚洲av无码专区久久蜜芽| 午夜少妇精品视频小电影| 日本久久免费| 国产日韩精品一区在线不卡| 秋霞国产在线| 日本黄色a视频| 99精品福利视频| 日本在线视频免费| 国产办公室秘书无码精品| 一边摸一边做爽的视频17国产| 国产精品乱偷免费视频| 欧美成人精品一区二区| 亚洲综合色婷婷中文字幕| 国产欧美在线视频免费| 中文字幕 91| 男人天堂伊人网| 精品丝袜美腿国产一区| 57pao国产成视频免费播放| 五月丁香伊人啪啪手机免费观看| 男人天堂亚洲天堂| 久久综合激情网| 久久人与动人物A级毛片| 日韩在线第三页| 亚洲国产日韩一区| 国产三级精品三级在线观看| 久久国产精品波多野结衣| 国产SUV精品一区二区6| 精品少妇人妻av无码久久| 黄色在线不卡| AV无码无在线观看免费| 99热这里只有精品在线播放| 国产成人精品2021欧美日韩| 亚洲女同一区二区| 一级在线毛片| 国产91视频观看| 在线观看国产一区二区三区99| 国产福利免费视频| 亚洲第一成年人网站| 色老头综合网| a毛片基地免费大全| 免费 国产 无码久久久| 久久窝窝国产精品午夜看片| 亚洲久悠悠色悠在线播放| 亚洲侵犯无码网址在线观看| 欧美日韩国产系列在线观看| 最新精品久久精品| 免费A∨中文乱码专区| 五月天在线网站| 欧美a在线视频| 国产av一码二码三码无码 | 综1合AV在线播放| 亚洲第一网站男人都懂| 亚洲成在线观看 | 麻豆精品在线播放| 九月婷婷亚洲综合在线| 98超碰在线观看| 国产精品无码作爱| 免费看美女毛片| 午夜高清国产拍精品| 亚洲午夜福利在线| 婷婷色丁香综合激情| 色哟哟国产精品| 国产网站黄| 2021无码专区人妻系列日韩| 日韩国产一区二区三区无码| 四虎永久免费在线| 2019年国产精品自拍不卡| 久久久无码人妻精品无码| 亚洲精品成人片在线播放| 免费一级无码在线网站 | 欧美成人手机在线视频| 欧美国产菊爆免费观看| 国产欧美日韩综合在线第一| 亚洲精品大秀视频| 99ri精品视频在线观看播放| 91在线视频福利| 久久成人免费| 精品久久久久久久久久久| 欧美丝袜高跟鞋一区二区|