J2EE總結(二)——與servlet從相識到相知

來源:互聯網
上載者:User

標籤:

話說這J2EE視頻看的本身每天活蹦亂跳的我是天天都像得了重病似的,怎麼也犯不過勁兒來。裡面接觸了大量關於Java的專業詞彙,如JNDI,ANT,servlet,Java Bean等等。讓人一時難以消化。

但在這裡,還是強烈建議大家,無論如何要本著不拋棄,不放棄的精神堅持下去。看到後面也許因為你的不甘心,或者老天同情你的遭遇,忽然你就開竅兒了呢。其實慢慢的聽的多了,也就跟原來的知識逐漸的聯絡上了,這樣也就沒有原來那樣費勁兒了。

一、與servlet相識1、一個類

首先不能被它陌生的名字嚇到,它其實就是一個Java類。如果只說它是一個Java類,那麼跟平時學到的如C#中的類就一樣了,沒什麼區別,所以它就不陌生了。

2、功能

接收客戶的請求

響應用戶端

3、聯想

根據servlet的功能,我們能聯想到些什麼呢?

     其實我們很早就開始接觸servlet了,之前我們學習牛腩的時候,用到過handler,一般處理常式,它的功能和它類似,當時是為瞭解決ajax非同步作業。

     其次,在學習ajax時,利用Java語言編寫服務端時,就已經用到了servlet這個類,在這個類裡,我們對從用戶端發來的請求進行處理或者說將請求傳遞給伺服器,同時,將伺服器給出的處理回應給用戶端。


這樣想來,其實它並不陌生啊。


二、與servlet相知

認識了servlet後,我們需要再瞭解在servlet類中是通過哪些方法來處理用戶端請求並進行回應的。

1、類

繼承自HttpServlet,存在於服務端

2、生命週期

在瞭解servlet生命週期前,我們必須清楚的知道,servlet類存在於伺服器端。而一切關於servlet的建立,使用和銷毀其實幕後操作的黑手都是server。

server建立一個servlet對象——利用init方法進行初始化——用戶端發出請求——server建立一個請求(request)和響應(response)對象——啟用servlet中的service方法——service方法進行處理擷取資源後回應用戶端

以上是關於servlet在執行時一個大致流程。

3、方法

1、service()在客戶請求時,server會通過service方法來進行處理和響應,在調用service方法時,會傳入兩個參數,一個是HttpServletRequest來接收客戶的請求,另一個是HttpServletResponse來將伺服器對客戶的響應資訊傳遞給用戶端。

2、在用戶端請求時,有兩種方式get和post請求,為了區分這兩種請求,把service方法分為處理兩種不同請求的doGet()和doPost(),同時兩個參數都不可少!

service方法樣本:

Import javax.servlet.*;Import javax.servlet.http.*;Import java.io.*;Public class MyServlet extends HttpServlet{Public void service(HttpServletRequest req,HttpServletResponse res) throws ServletException,IOException{//process request,generate response}}

4、servletContext

對此,與servletConfig相結合理解的並不是特別清楚,只是瞭解到servletContext用來在servlet之間進行通訊,它儲存著公開變數和靜態變數。任何servlet和JSP都可以訪問到它。

通過getServletContext來擷取,同時可以通過setAttribute()來設定公開變數,同時還可以通過removeAttribute來移除變數。

ServletContext,是一個全域的儲存資訊的空間,所以,為了節省空間的,提高效率,ServletContext中,要放必須的、重要的、所有使用者需要共用的線程又是安全的一些資訊。

三、小結本文主要從servlet的功能和其中的方法來進行介紹,但是servlet中包含的知識遠不止於此,如:servlet過濾器,之前總結過在MVC中的過濾器,servlet中的過濾器與其原理也應該萬變不離其宗。剩下的就靠我們自己在實踐中去慢慢探索了!




J2EE總結(二)——與servlet從相識到相知

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.