JSP 的responsed对象的增加cookie

来源:互联网 发布:提醒软件reminder 编辑:程序博客网 时间:2024/06/06 00:30

cookie通常用于网站记录客户的某些信息,比如客户名及客户的喜好等。一旦客户下次登录,网站可以获取到客户的相关信息。

cookie与session的区别:

session会随浏览器的关闭而失效

cookie会一直存放在客户端机器上,除非超出cookie的生命周期

增加cookie也是使用response内置对象完成的,有以下几种方法:

void addcookie(Cookie cookie):增加cookie

cookie值不允许出现中文字符,如果有中文字符必须进行编码得出结果后获取

用java.net.URLEncoder.encode(中文字符,编码格式)

基本步骤:一.创建cookie实例;二.设置cookie的生命期限 三.向客户端写cookie

实例:增加cookie

<%@ page language="java" contentType="text/html; charset=UTF-8"
     pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>增加cookie</title>
</head>
<body>
<% 
String name="admin"; 
Cookie cookie=new Cookie("username",name);//定义对象,(cookie对象名称,cookie的值)
cookie.setMaxAge(24*3600);//设置cookie有效期,单位是秒(天*时间)
response.addCookie(cookie);//增加cookie


%>
</body>
</html>


实例:读取cookie

<%@ page language="java" contentType="text/html; charset=charset=UTF-8"
    pageEncoding="charset=UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>读取cookie</title>
</head>
<body>
<%

//获取cookie内容
Cookie []c=request.getCookies();

//读取cookie
for(int i=0;i<=c.length-1;i++){

out.print("名称:"+c[i].getName()+",对应的值为:"+c[i].getValue());
}


%>
</body>
</html>

0 0
原创粉丝点击