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); %>