天天看點

Cookie和Session

cookie和session:

http協定的特點:無狀态和單向性

//建立cookie對象的key值和value值,隻能是英文和數字

cookie c = new cookie("key","value");

c.setmaxage();

response.addcookie(c);

cookie[] cs = request.getcookies();

for(int i=0;i<cs.length;i++)

{

   string key = cs[i].getname();

   if("key".equals(key))

   {

     cs[i].getvalue();

   }

}

狀态cookie,持久化cookie

c.setmaxage(秒);//持久化cookie

c.setmaxage(60*60*24*365);

同一個伺服器可以給同一個用戶端最大傳回30個cookie(20)

練習:

編寫一個servlet,如果是第一次通路這個servlet的話,你就顯示你好,歡迎第一次通路。如果不是第一次通路的話,那麼顯示歡迎你回來。

input填寫一個姓名

編寫一個針對于用戶端的計數器。

編寫一個

顯示最近5個搜尋關鍵字。

string name = request.getparameter("key");

response.sendredirect("http://www.google.com/search?hl=en&q="+response.encodeurl(name)+"&btng=google+search");

response.sendredirect("http://www.baidu.com/s?wd="+name);

session的使用:

會話

httpsession session = request.getsession(不填|true|false);

session.setattriubte("key",object obj);

session.setattribute("key1","fdsafdsa");

session.setattribute("",user);

user user = (user)session.getattribute("key");

session生命周期:

servletcontext的生命周期(容器啟動到關閉)

session(生命周期是可變,可由設計人員決定其生命周期的時間)

用戶端計數器改成使用session來實作。

繼續閱讀