首頁>Club>
14
回覆列表
  • 1 # AI智慧

    JavaWeb開發中Servlet是屬於控制層最底端的部分的 ,也就是MVC c的最底層。

    他往往用來處理請求的。

    他的外一層就是View、他的一層就是Service(Servlet往往呼叫他做邏輯判斷的操作) 原始的Servlet的生命週期 servlet在第一次訪問的時候就會被初始化 servlet物件一旦被建立就會駐留在記憶體中,當伺服器關閉或者web應用被移除的時候servlet物件才銷燬

    1:當servlet被建立的時候那麼 servlet就會被初始化 呼叫init方法

    2:任何請求來自客戶端,service方法就會被自動呼叫

    3:當servlet從伺服器被移除的時候 distroy方法將會被呼叫 如下是一個原始的Servlet程式碼(這並不是現在開發一貫的做法,請往下看)

    ServletConfig

    為Servlet設定初始引數要在web.xml中配置(只對當前servlet有效)

    如下是在Web.xml中為當前servlet配置初始化引數的。

    ServletCofig物件可以透過this.getServletConfig來獲得,因為在父類中已經在獲得了ServletConfig物件;也可以servletconfig物件可以透過父類的init方法內穿過來的config物件獲取。

    ServletContext

    通常我們稱ServletContext叫Application物件 。也叫域物件。

    Servlet引擎為每個WEB應用程式都建立一個對應的ServletContext物件,ServletContext物件被包含在ServletConfig物件中,呼叫ServletConfig.getServletContext方法可以返回

    通常獲得ServletContext的方法是直接getservletcontext 因為在父類中已經定義了這樣的方法,子類直接繼承使用。

    ServletContext物件的引用。getServletContext().getInitParameter("a") 的方式獲得web應用的初始化引數

    我們還可以為整個web應用配置初始化引數

    Request & Response

    基本servlet 中service的方法的request 和 response 物件分別是

    RequestFacade 和 ResponseFacade 這個類是Tomcat中的類 他繼承自HttpServletRequest而 HttpServletRequest 又繼承 ServletRequest(Response同理)

    一些常用方法:

    request.getRequestURL(); 獲得URl

    request.getHeader("accept-encoding"); 獲得支援的壓縮格式

    request.getHeader("referer"); 獲得來自哪裡(防盜鏈)

    request.getInputStream(); 獲得訊息體

    request.getParameter("name") 獲得引數

    如下是現代開發中常用的Servlet

  • 2 # Java猿

    如果是java開發,應該可以作為v和c其實每個jsp都編譯成了servlet,還有控制邏輯也在servlet中。

  • 中秋節和大豐收的關聯?
  • 34週歲女未婚暴躁,易怒,悲觀,自閉、心煩,我是不是得了抑鬱症,我該怎麼辦?