成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

淺析Servlet的Web應用程序

開發 后端
本文簡單介紹Servlet的Web應用程序,以及介紹載入Servlet,cookie是如何工作的和eCourt會話等。

Java Servlet API的一個強大特性是其能夠相對容易地處理表單數據。和傳統CGI開發中四處尋找環境變量不同,你可以通過常規的調用Java方法使用Servlets來訪問表單和查詢字符串數據。讓我們來看一下它是如何工作的。你可以在這里下載本文示例的代碼。

載入Servlet

當Servlet被加載的時候,Servlet引擎會調用Servlet的init方法。這個方法在Servlet被加載的時候只會被調用一次,并把配置數據以ServletConfig類的實例的形式傳遞出去。ServletConfig對象包含有Servlet引擎和Servlet運行環境的信息。

ServletConfig對象會向Servlet所操作的Web應用程序公開初始化數據。使用getInitParamete(StringparamName)方法,你可以訪問到這個數據,如Listing A所示。

破壞之前

Servlet類會公開一個方法——destroy,在Servlet正常卸載的時候,Servlet引擎就會調用這個方法。當Servlet所有的線程都卸載完畢或者超過了指定時間之后,這個方法就會被調用。它被用來保存Servlet或者清除資源,見Listing B。
更多關于Servlet的文章
在《Java Servlet入門》這篇文章里,我們討論了由Java平臺提供的Servlet如何在胖客戶平臺里使用類似面向對象的技術幫助創建Web應用程序。要了解Tomcat,看一看《Tomcat 4/JSP初學者指南》。
每個用戶一個實例

Servlet必須要能夠處理來自多個客戶的多個請求。由于任意數量的客戶都會同時訪問一個Servlet,所以除了init之外的任何方法都必須以安全線程的方式被實現。下圖是多個用戶請求和單個Servlet實例之間的關系。

對單個servlet的多個客戶請求

對單個servlet的多個客戶請求

cookie是如何工作的

由于是一個Servlet處理多個用戶的請求,所以Servlet需要一種機制來確定是哪個客戶發起哪個請求的。用來辨認客戶請求身份最常用的機制是使用HTTP cookie。HTTP cookie是使用HTTP報頭在瀏覽器客戶和服務器之間傳遞的任意長度的信息。

當Servlet接收到來自有cookie的客戶的請求,Servlet就會使用cookie里的信息確定是哪個客戶,并由此智能地向客戶回應。這看起來像是一個無足輕重的特性,但是它把客戶和基于 Servlet的Web應用程序之間的交互操作帶進了一個新的空間。尤其,這個特性讓Web應用程序能夠保存和恢復請求之間的客戶狀態。

Servlet維護客戶狀態的能力能允許客戶和基于Servlet的Web應用程序進行對話,而不是把客戶限制在一次性的請求/回應的事務處理里。Java Servlet API提供了一個叫做Cookie的類,它能夠被從請求里取回,也能被保存在回應里,這個類還能讓你從cookie里獲得信息或者設置信息。例如,Listing C里的程序段從請求里取回cookie,打印每個cookie的信息,或者創建新的cookie并把它添加到回應里。

eCourt會話

有了能夠維持請求和回應之間客戶狀態的能力,面向Servlet的Web應用程序開發人員就能夠有效地設計Web應用程序,這樣的程序能夠在叫做會話的一段時間內和客戶進行交互操作。會話能夠被Servlet開發人員用來接收來自客戶的數據,并根據先前請求和/或回應里接收到的信息把數據傳遞給客戶。這有助于開發高效的Web應用程序,例如購物車、在線銀行和Web郵件。

Java Servlet API提供了一個叫做HttpSession的類,開發人員可以在其中保存和取回任意對象,這些對象里包含有和客戶會話相關信息。對象作為名稱/值被保存在HttpSession類里,并被從其中取回。Listing D是一個這樣的例子。

結論

使用Java Servlet API,你就能夠實現一些很強大的功能,這些都是使用傳統CGI編程很難做到的,例如將一個請求同客戶關聯起來,實現與客戶之間有意義的對話。

【編輯推薦】

  1. Servlet容器的會話跟蹤
  2. 詳解Servlet實例
  3. 淺談Servlet讀取請求頭
  4. 調用Http Servlet Request的方法
  5. 淺析Servlet基本結構
責任編輯:佚名 來源: 中國IT實驗室
相關推薦

2009-07-10 17:24:07

Swing應用程序

2011-07-20 16:59:07

2022-12-25 18:03:13

Debug原理軟件

2009-07-30 16:02:53

2010-01-26 13:29:46

VC++應用程序

2009-09-24 17:21:17

加速Hibernate

2009-07-20 16:08:04

ASP.NET應用程序

2009-07-20 16:03:14

ASP.NET 2.0

2009-04-01 14:33:33

2010-02-22 10:38:09

Python應用程序

2018-10-25 15:13:23

APP脫殼工具

2010-05-20 09:48:36

2011-03-22 14:12:17

LAMP

2010-12-27 17:04:07

應用程序版本升級

2009-01-16 09:22:40

Web應用程序Web程序管理Web服務

2012-04-19 09:34:21

ibmdw

2009-02-27 17:00:25

2009-07-01 13:54:41

Servlet和JSP

2010-03-09 13:27:23

Web 2.0應用程序

2023-01-09 17:04:24

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久久久黄色 | 国产亚洲人成a在线v网站 | 精品国产乱码久久久久久果冻传媒 | 韩国电影久久 | 日韩在线不卡 | av天天澡天天爽天天av | 久久福利电影 | 毛片免费观看 | www日本在线 | 久久久免费电影 | 欧美在线一区二区三区 | 国产精品国产成人国产三级 | 精品亚洲一区二区三区 | 中文天堂在线一区 | 涩涩导航 | 91视频网| 精品毛片| www.精品国产 | 九九视频网 | 欧美综合一区二区三区 | 亚洲一区网站 | 国产一区二区日韩 | 伊人春色在线 | 亚州中文| 欧美精品久久久 | 免费a v网站 | 在线一区观看 | 亚洲欧美精品国产一级在线 | 黄色毛片大全 | 91久久久久 | 久久亚洲91 | 国产精品久久久久久一区二区三区 | 国产欧美精品区一区二区三区 | 二区在线观看 | 国产综合精品一区二区三区 | 男人天堂午夜 | 欧洲免费视频 | 亚洲视频www | 午夜影晥 | 伊人免费网 | 色中文在线 |