日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

【Servlet】总结 JSP的四大域对象、Servlet的四个作用域:pageContext、request、session、application

發(fā)布時間:2024/2/28 javascript 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Servlet】总结 JSP的四大域对象、Servlet的四个作用域:pageContext、request、session、application 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

JSP的四大域?qū)ο?#xff1a;pageContext、request、session、application

這四個域?qū)ο?#xff0c;都提供了一對相同的方法:

  • 設置一個屬性:
    setAttribute(“屬性名”,“屬性值”);

  • 獲取一個屬性:
    getAttribute(“屬性名”);

(1)pageContext:

它是四大域?qū)ο笾杏蜃钚〉?#xff0c;只能獲取本頁中set設置的屬性。
在A.jsp中設置的屬性,只能在A.jsp中使用。

(2)request:

request可以獲取到當前頁面所set的屬性,還可以獲取轉(zhuǎn)發(fā)頁面的屬性。
在A.jsp中設置的屬性name,在A中可以get到。
再通過request.getRequestDispatcher("B.jsp").forward(request, response);轉(zhuǎn)發(fā)到B.jsp,則在A和B中都能get到name。

(3)session:

用戶打開瀏覽器訪問,創(chuàng)建session(生命周期開始)。
session超時(默認為30分鐘)或被聲明失效(關(guān)閉瀏覽器),該對象生命周期結(jié)束(一次會話)。
session里的屬性,你可在任何網(wǎng)頁中設置和調(diào)用.

(4)application(又名ServletContext):

web應用加載的時候創(chuàng)建,只要服務器沒有關(guān)閉,它的屬性會一直保存。


Servlet的四個作用域:request、cookie、session、context

這四個對象有不同級別的作用域和生命周期。
(1)request:解決了一次請求內(nèi)的數(shù)據(jù)共享問題(作用域:一次請求)

req.setAttribute("uname", "張三"); // 在servlet中添加request參數(shù)

(2)cookie:解決了同一用戶不同請求的數(shù)據(jù)共享的問題(作用域:一次會話/或者設置定時)

Cookie c = new Cookie("uname", "張三"); // 創(chuàng)建Cookie對象c.setPath("CookieServlet"); // 指定共享cookie的Servletresp.addCookie(c); // 將cookie添加到響應對象中

(3)session:解決了同一用戶不同請求的數(shù)據(jù)共享問題(作用域:會話創(chuàng)建->瀏覽器關(guān)閉)

// session 技術(shù)是依賴 cookie 技術(shù)的服務器端的數(shù)據(jù)存儲技術(shù)// cookie存儲在本地瀏覽器,而session存儲在服務器HttpSession hs=req.getSession(); // 在servlet中獲取session對象hs.setAttribute("uname","張三"); // 數(shù)據(jù)存儲

(4)context:解決了不同用戶的數(shù)據(jù)共享問題(作用域:服務器啟動->服務器關(guān)閉)

ServletContext sc=this.getServletContext(); // 在servlet中獲取context對象sc.setAttribute("str", "ServletContext對象學習");// 數(shù)據(jù)存儲

JSP與Servlet作用域?qū)ο蟮臄?shù)據(jù)傳遞

以session為例:

Java中存儲session

HttpSession hs=req.getSession(); //在Servlet中獲取session對象 hs.setAttribute("user", userObj); //將userObj對象存入session中(鍵值對)

jsp頁面獲取session

<%=((User)session.getAttribute("user")).getUname()%>

總結(jié)

以上是生活随笔為你收集整理的【Servlet】总结 JSP的四大域对象、Servlet的四个作用域:pageContext、request、session、application的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。