JSP內置對象

1.request瀏覽器

服務器端接收參數。緩存

1)給請求的對象添加數據用request.setAttribute(key,value)tomcat

2)從請求的對象中取出數據是request.getAttribute(key)服務器

3)接收cookie(一些網站的記錄存儲在本地,相似淘寶的記住用戶登陸)cookie

cookie存的是key,value,ck.getName()--->keysession

<%
//檢查Cookie
//得到Cookie集合
Cookie[] cks=request.getCookies();
for(Cookie ck:cks)
{
    out.write(ck.getName()+"="+URLDecoder.decode(ck.getValue())+"<br>");
}
%>

2.responseapp

服務器端發送數據,瀏覽器接收。jsp

1)發送信息時,不緩存,當即向瀏覽器發送。測試

2)發送cookie網站

//建立cookie
        Cookie ck = new Cookie("cardid",cardid);
        ck.setMaxAge(10 *24 *60*60); //設置過時時間
        
        response.addCookie(ck); //發送
        String username="張三";
        //對中文進行轉碼
        Cookie ck1 = new Cookie("username",URLEncoder.encode("張三"));
        response.addCookie(ck1);

3.session

會話對象,記住當前用戶信息。

1)setAttribute("key",object)

2)getAttribute("key") ,返回的是對象的屬性值

跳轉頁面以後,request不能獲取數據,可是session能夠獲得數據

<%
//判斷session
String cardid=session.getAttribute("cardid").toString();
out.write("cardid="+cardid);
%>
<a href="Testlogin.jsp">測試是否已成功登陸的頁面</a>
<%
Object obj=session.getAttribute("cardid");
if(obj==null)
{
    out.print("你沒有登陸");
    response.setHeader("refresh", "2;url=loginin.jsp");
}
else
{
    out.print("cardid="+obj.toString());
    //銷燬全部session
    //session.invalidate();
    //移除某個屬性
    session.removeAttribute("cardid");

}
%>

設置session超時時間  setMaxInactiveInterval(秒數) 默認tomcat的session20分鐘,超過20分鐘,沒有請求發送給服務器,session就會失效
時間是重置的,在未達到請求時間時,依次過來的請求,都會重設時間

4.application

是服務器共享的對象

//獲取application屬性
int count=Integer.parseInt(application.getAttribute("count").toString());
out.print("<br>網站計時器:"+count++);
application.setAttribute("count", count);
%>
相關文章
相關標籤/搜索