javaee -Cookie

初学javaee

Cookie

什么是Cookie

• 由于HTTP协议是无状态的,服务器端的业务必须是要有状态的。
• Cookie出现是为了存储web中的状态信息,以方便服务器端使用。
• 服务器可以根据Cookie来跟踪用户。
• 客户端首次访问服务器时,服务器先在客户端存放包含该客户的有关信息的cookie。
• 以后客户端每次请求访问服务器时,都会在HTTP请求数据中包含cookie,服务器解析HTTP请求中的cookie,从而获得客户的有关信息。

Cookie运行机制

Cookie运行机制

Cookie Api

一个cookie应该包含一对key/value
创建一个 cookie 对象;向 HTTP 响应头中添加 cookie
Cookie theCookie=new Cookie(“cookieName”,
“cookieValue”);
response.addCookie(the Cookie);
生成一个Cookie并将它写到用户的硬盘上
其他
其他
默认情况下,Cookie的生命周期为当前会话,用setMaxAge()方法设置Cookie的生命周期。如:
cookie.setMaxAge(606024*365); //设置一年的有效期(秒)
从用户硬盘上获取Cookie:

<% Cookie[] cookies = request.getCookies();
for(int i = 0; i < cookies.length; i++){
%>
<b>Cookie name:</b>
<%= cookies[i].getName() %>
<b>Cookie value:</b>
<%= cookies[i].getValue() %>
</p>
<% } 

实例

int count=0;
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		
		PrintWriter out=response.getWriter();
		Cookie[] cookies=request.getCookies();//获得HTTP请求中的所有Cookie
		if(cookies!=null) {//访问每一个Cookie
			for(int i=0;i<cookies.length;i++) {
				out.print("Cookie name:"+cookies[i].getName());
				out.print("Cookie value:"+cookies[i].getValue());
				out.println("Max Age:"+cookies[i].getMaxAge()+"\r\n");
			}}
		else {
			out.println("No Cookie.");
		}
		response.addCookie(new Cookie("Cookie Name"+count,"cookieValue"+count));//向客户端写一个Cookie
		count++;
		}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值