Servlet 教學(xué) Servlet 為創(chuàng)建基於 web 的應(yīng)用程式提供了基於元件、獨(dú)立於平臺的方法,可以不受 CGI 程式的效能限制。 Servlet 有權(quán)限存取所有的 Java API,包括存取企業(yè)級資料庫的 JDBC API。本教學(xué)將講解如何使用 Java Servlet 來開發(fā)基於 web 的應(yīng)用程式?,F(xiàn)在開始學(xué)習(xí) Servlet!
Servlet(Server Applet),全名為Java Servlet,未有中文譯本。是用Java編寫的伺服器端程式。其主要功能在於互動式地瀏覽和修改數(shù)據(jù),產(chǎn)生動態(tài)Web內(nèi)容。狹義的Servlet是指Java語言實(shí)作的一個接口,廣義的Servlet是指任何實(shí)作了這個Servlet接口的類,一般情況下,人們將Servlet理解為後者。
Servlet運(yùn)行於支援Java的應(yīng)用程式伺服器中。從實(shí)作上講,Servlet可以回應(yīng)任何類型的請求,但絕大多數(shù)情況下Servlet只用來擴(kuò)展基於HTTP協(xié)定的Web伺服器。
最早支援Servlet標(biāo)準(zhǔn)的是JavaSoft的Java Web Server。此後,一些其它的基於Java的Web伺服器開始支援標(biāo)準(zhǔn)的Servlet。
提示:在繼續(xù)學(xué)習(xí)Servlet之前,您需要對Java知識有一定的了解。
Servlet工作模式
客戶端發(fā)送請求至伺服器
伺服器啟動並呼叫Servlet,Servlet根據(jù)客戶端請求產(chǎn)生回應(yīng)內(nèi)容並將其傳遞給伺服器
伺服器將回應(yīng)傳回客戶端
其他
#提示:我們的Servlet教學(xué)將幫助您學(xué)習(xí)從初級到進(jìn)階的Servlet知識。如果你有任何疑問,請前往PHP中文網(wǎng)Servlet社群提出你的問題,會有熱心網(wǎng)友為你解答。
生命週期
當(dāng)servlet被部署在應(yīng)用程式伺服器中(應(yīng)用程式伺服器中用來管理Java元件的部分被抽象化為容器)以後,由容器控制servlet的生命週期。除非特別指定,否則在容器啟動的時候,servlet是不會被載入的,servlet只會在第一次要求的時候被載入和實(shí)例化。
servlet一旦被加載,一般不會從容器中刪除,直到應(yīng)用程式伺服器關(guān)閉或重新啟動。但當(dāng)容器做記憶體回收動作時,servlet有可能被刪除。也正是因?yàn)檫@個原因,第一次造訪servlet所花的時間要大大多於以後造訪所花的時間。
servlet在伺服器的運(yùn)作生命週期為,在第一次請求(或其實(shí)體被記憶體垃圾回收後再被存?。r被載入並執(zhí)行一次初始化方法,跟著執(zhí)行正式運(yùn)行方法,之後會被常駐並每次被要求時直接執(zhí)行正式運(yùn)行方法,直到伺服器關(guān)閉或被清理時執(zhí)行一次銷毀方法後實(shí)體銷毀。
servlet與JSP的關(guān)係
Java伺服器頁面(JSP)是HttpServlet的擴(kuò)充。由於HttpServlet大多是用來回應(yīng)HTTP請求,並返回Web頁面(例如HTML、XML),所以不可避免地,在編寫servlet時會涉及大量的HTML內(nèi)容,這給servlet的書寫效率和可讀性帶來很大障礙,JSP便是在這個基礎(chǔ)上產(chǎn)生的。
其功能是使用HTML的書寫格式,在適當(dāng)?shù)牡胤郊尤隞ava程式碼片段,將程式設(shè)計師從複雜的HTML中解放出來,更專注於servlet本身的內(nèi)容。
JSP在第一次被存取的時候被應(yīng)用程式伺服器轉(zhuǎn)換為servlet,在以後的運(yùn)行中,容器直接呼叫這個servlet,而不再存取JSP頁面。 JSP的實(shí)質(zhì)仍然是servlet。
本servlet教學(xué)手冊涵蓋的內(nèi)容
本servlet教學(xué)涵蓋所有servlet基礎(chǔ)及進(jìn)階知識,包含了servlet環(huán)境設(shè)定、servlet生命週期、servlet表單資料、servlet異常處理、servlet cookie處理、session追蹤、servlet資料庫存取等等。
提示:本教學(xué)的每一章都包含了許多servlet實(shí)例,您可以直接點(diǎn)擊?"執(zhí)行實(shí)例"?按鈕線上查看結(jié)果。這些範(fàn)例將幫助您更好地理解和使用servlet。
最新章節(jié)
- Servlet 國際化 2016-10-17
- Servlet 調(diào)試 2016-10-17
- Servlet 包 2016-10-17
- Servlet 發(fā)送電子郵件 2016-10-17
- Servlet 自動刷新頁面 2016-10-17
- Servlet 點(diǎn)擊計數(shù)器 2016-10-17
- Servlet 網(wǎng)頁重定向 2016-10-17
- Servlet 處理日期 2016-10-17
相關(guān)課程
- 最新ThinkPHP 5.1全球首發(fā)影片教學(xué)(60天成就PHP大牛線上訓(xùn)練課程) 2022-02-17
- 簡單聊聊PHP創(chuàng)業(yè)那點(diǎn)事 2023-01-04
- 大型實(shí)戰(zhàn)天龍八部之開發(fā)Mini版MVC架構(gòu)仿糗事百科網(wǎng)站 2018-01-25
- 登入驗(yàn)證與經(jīng)典留言板 2018-03-02
- PHP實(shí)戰(zhàn)開發(fā)極速入門: PHP快速創(chuàng)建[小型商業(yè)論壇] 2022-06-28
- 快速入門Node.JS全套完整版 2022-09-30
- 自己動手寫 PHP MVC 框架(40節(jié)精講/鉅細(xì)/新人進(jìn)階必看) 2022-12-08
- 馬士兵spring影片教學(xué) 2022-04-12