jsp之四種范圍對象

      網(wǎng)友投稿 726 2022-05-30

      客戶端在第一次請求服務(wù)端時,如果服務(wù)端發(fā)現(xiàn) 此請求沒有 JSESSIONID,則會創(chuàng)建一個 name=JSESIONID的cookie 并返回給客戶端

      Cookie:

      a.不是內(nèi)對對象,要使用必須new

      b.但是,服務(wù)端會 自動生成一個(服務(wù)端自動new一個cookie) name=JSESIONID的cookie 并返回給客戶端

      JSP9大內(nèi)置對象

      pageContext JSP頁面容器

      request 請求對象

      session 會話對象

      appliation 全局對象

      <%="當(dāng)前項(xiàng)目的虛擬路徑:" +application.getContextPath() +"
      " %> <%="虛擬路徑對應(yīng)的絕對路徑:" +application.getRealPath("/MyJspProject") +"
      " %>

      response 響應(yīng)對象

      config 配置對象(服務(wù)器配置信息)

      out 輸出對象

      jsp之四種范圍對象

      page 當(dāng)前JSP頁面對象(相當(dāng)于java中的this)

      exception 異常對象

      四種范圍對象(小->大)

      pageContext JSP頁面容器 (page對象); 當(dāng)前頁面有效

      request 請求對象 同一次請求有效

      session 會話對象 同一次會話有效

      appliation 全局對象 全局有效(整個項(xiàng)目有效)

      以上4個對象共有的方法:

      Object getAttribute(String name):根據(jù)屬性名,或者屬性值

      void setAttribute(String name,Object obj) :設(shè)置屬性值(新增,修改)

      setAttribute(“a”,“b”) ;//如果a對象之前不存在,則新建一個a對象 ;

      如果a之前已經(jīng)存在,則將a的值改為b

      void removeAttribute(String name):根據(jù)屬性名,刪除對象

      a.

      pageContext 當(dāng)前頁面有效 (頁面跳轉(zhuǎn)后無效)

      案例:

      pageContext.jsp

      <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> Insert title here <% pageContext.setAttribute("hello", "world"); request.getRequestDispatcher("pc1.jsp").forward(request, response); %>

      pc1.jsp

      <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> Insert title here pc1.jsp
      <%=pageContext.getAttribute("hello") %>

      b.

      request 同一次請求有效;其他請求無效 (請求轉(zhuǎn)發(fā)后有效;重定向后無效)

      案例(一):request請求轉(zhuǎn)發(fā)取值

      request.jsp

      <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> Insert title here <% request.setAttribute("hello", "world"); request.getRequestDispatcher("rq1.jsp").forward(request, response); %>

      rq1.jsp

      <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> Insert title here pq1.jsp
      <%=request.getAttribute("hello") %>

      案例(二):request重定向取值

      把上面案例(一)的請求轉(zhuǎn)發(fā)改為重定向

      <% request.setAttribute("hello", "world"); //request.getRequestDispatcher("rq1.jsp").forward(request, response); response.sendRedirect("rq1.jsp"); %>

      再次訪問:

      重定向?yàn)閮纱握埱螅詒equest獲取不到值。

      c.

      session 同一次會話有效 (無論怎么跳轉(zhuǎn),都有效;關(guān)閉/切換瀏覽器后無效 ; 從 登陸->退出 之間 全部有效)

      session案例:

      session.jsp

      <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> Insert title here <% session.setAttribute("hello", "world"); //request.getRequestDispatcher("rq1.jsp").forward(request, response); response.sendRedirect("ss1.jsp"); %>

      ss1.jsp

      <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> Insert title here ss1.jsp
      <%=session.getAttribute("hello") %>

      切換瀏覽器后直接訪問ss1.jsp無效:

      d.

      application

      全局變量;整個項(xiàng)目運(yùn)行期間 都有效 (切換瀏覽器 仍然有效);

      關(guān)閉服務(wù)、其他項(xiàng)目 無效

      案例:

      application.jsp

      <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> Insert title here <% application.setAttribute("hello", "world"); //request.getRequestDispatcher("rq1.jsp").forward(request, response); response.sendRedirect("ap1.jsp"); %>

      ap1.jsp

      <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> Insert title here ap1.jsp
      <%=application.getAttribute("hello") %>

      切換瀏覽器訪問也有效

      重啟Tomcat后無效:

      ->多個項(xiàng)目共享、重啟后仍然有效 :JNDI

      1.以上的4個范圍對象,通過 setAttribute()賦值,通過getAttribute()取值;

      2.以上范圍對象,盡量使用最小的范圍。因?yàn)?對象的范圍越大,造成的性能損耗越大。

      JSP

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。

      上一篇:華為云獲TISAX認(rèn)證,保障汽車行業(yè)客戶安全上云
      下一篇:單片機(jī)是否為嵌入式技術(shù),單片機(jī)和嵌入式學(xué)哪個?
      相關(guān)文章
      亚洲AV无码乱码在线观看牲色| 亚洲乱码日产精品一二三| 亚洲国产综合无码一区二区二三区 | 国产午夜亚洲精品不卡免下载 | 亚洲成人激情小说| 亚洲一区无码中文字幕乱码| 亚洲综合日韩中文字幕v在线| 亚洲AV福利天堂一区二区三| 亚洲国产精品成人精品无码区 | 亚洲精品福利在线观看| 亚洲视频在线一区二区三区| 亚洲综合一区二区精品导航| 亚洲午夜视频在线观看| 亚洲一区二区三区高清| 亚洲天堂中文字幕| 亚洲成无码人在线观看| 亚洲avav天堂av在线网爱情| 亚洲国产成人久久综合一区| 国产成人精品日本亚洲专| 亚洲高清一区二区三区| 亚洲色偷偷色噜噜狠狠99| 亚洲精品人成网线在线播放va| 亚洲精品av无码喷奶水糖心| 亚洲av成人一区二区三区在线播放 | 亚洲人成人网站18禁| 亚洲精品乱码久久久久蜜桃 | 日韩亚洲产在线观看| 亚洲国产欧美日韩精品一区二区三区 | 国产亚洲精品无码成人| 亚洲国产精品SSS在线观看AV| 亚洲AV无码专区国产乱码4SE| 亚洲天堂男人天堂| 亚洲Av无码一区二区二三区| 亚洲综合激情五月色一区| 亚洲欧美日韩国产精品一区| 无码欧精品亚洲日韩一区夜夜嗨 | 亚洲狠狠婷婷综合久久蜜芽| 高清在线亚洲精品国产二区| 亚洲综合亚洲综合网成人| 亚洲中文字幕久久精品无码APP| 亚洲高清国产拍精品26U|