天天看点

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来实现。

继续阅读