JSP九種內置對象

編輯本段JSP九種內置對象:
  request, response, out, session, application, config, pagecontext, page, exception. 
  一.request對象:
  該對象封裝了用戶提交的信息,經過調用該對象相應的方法能夠獲取封裝的信息,即便用該對象能夠獲取用戶提交信息。
  二.response對象:
  對客戶的請求作出動態的響應,向客戶端發送數據。
  三.session對象
  1.什麼是session:session對象是一個JSP內置對象,它在第一個JSP頁面被裝載時自動建立,完成會話期管理。
  從一個客戶打開瀏覽器並鏈接到服務器開始,到客戶關閉瀏覽器離開這個服務器結束,被稱爲一個會話。當一個客戶訪問一個服務器時,可能會在這個服務器的幾個頁面之間反覆鏈接,反覆刷新一個頁面,服務器應當經過某種辦法知道這是同一個客戶,這就須要session對象。
  2.session對象的ID:當一個客戶首次訪問服務器上的一個JSP頁面時,JSP引擎產生一個session對象,同時分配一個String類型的ID號,JSP引擎同時將這個ID號發送到客戶端,存放在Cookie中,這樣session對象和客戶之間就創建了一一對應的關係。當客戶再訪問鏈接該服務器的其餘頁面時,再也不分配給客戶新的session對象,直到客戶關閉瀏覽器後,服務器端該客戶的session對象才取消,而且和客戶的會話對應關係消失。當客戶從新打開瀏覽器再鏈接到該服務器時,服務器爲該客戶再建立一個新的session對象。
  四.aplication對象
  1.什麼是application:
  服務器啓動後就產生了這個application對象,當客戶在所訪問的網站的各個頁面之間瀏覽時,這個application對象都是同一個,直到服務器關閉。可是與session不一樣的是,全部客戶的application對象都是同一個,即全部客戶共享這個內置的application對象。
  2.application對象經常使用方法:
  (1)public void setAttribute(String key,Object obj): 將參數Object指定的對象obj添加到application對象中,併爲添加的對象指定一個索引關鍵字。
  (2)public Object getAttribute(String key): 獲取application對象中含有關鍵字的對象。
  五.out對象
  out對象是一個輸出流,用來向客戶端輸出數據。out對象用於各類數據的輸出。
  六•page java.lang.Object
  對應this關鍵字。JSP網頁自己
  page對象是當前頁面轉換後的Servlet類的實例。從轉換後的Servlet類的代碼中,能夠看到這種關係:
  Object page = this;
  在JSP頁面中,不多使用page對象。
  七•config
  javax.servlet. ServletConfig 的實例,該實例表明該JSP 的配置信息。經常使用的方法有getInitPararneter(String paramNarne) 及getInitPararneternarnes() 等方法。事實上, JSP 頁面一般無須配置,也就不存在配置信息。所以,該對象更多地在Servlet 中有效。
  八• exception
  java.lang.Throwable 的實例,該實例表明其餘頁面中的異常和錯誤。只有當頁面是錯誤處理頁面,即編譯指令page 的isErrorPage 屬性爲true 時,該對象纔可使用。經常使用的方法有getMessageO和printStackTraceO等。
  九• pageContext
  javax.servlet.jsp.PageContext 的實例,該對象表明該JSP 頁面上下文,使用該對象能夠訪問頁面中的共享數據。經常使用的方法有getServletContextO和getServletConfigO等。
  //使用pageContext 設置屬性,該屬性默認在page 範圍內
  pageContext. setAttribute ("page" , "hello") ;
  //使用request 設置屬性,該屬性默認在request 範圍內
  request. setAttribute ("request" , "hello");
  //使用pageContext將屬性設置在request 範圍中
  pageContext.setAttribute("request2" , "hello" , pageContext.REQUEST_SCOPE);
  // 使用session將屬性設置在session 範圍中
  session.setAttribute("session" , "hello"l;
  //使用pageContext將屬性設置在session範圍中
  pageContext.setAttribute("session2" , "hello" , pageContext.SESSION_SCOPE);
  //使用application將屬性設置在application範圍中
  application. setAttribute ("app" , "hello") ;
  //使用pageContext 將屬性設置在application 範圍中
  pageContext.setAttribute("app2" , "hello" , pageContext.APPL 工CATION_SCOPE) ;
相關文章
相關標籤/搜索