标签:servlet
目标规划:
通过这一节课,我们可以懂得如何使用Cookie,以及如何获取Cookie中的内容。
Cookie的详细概述。
1. Cookie 是保存在客户端的一个“键-值”对,用来标识用户的一些信息。
2. Cookie的应用
–在电子商务会话中标识用户
–对站点进行定制
–定向广告
3. 调用Cookie的构造函数,给出cookie的名称和cookie的值,二者都是字符串
Cookie c = new Cookie("userID", "a1234");
4. 如果要告诉浏览器将cookie存储到磁盘上,而非仅仅保存在内存中,使用setMaxAge (参数为秒数)
c.setMaxAge(60*60*24*7); // One week
5. 将Cookie放入到HTTP响应
response.addCookie(c);
7.实例,创建cookie
我们首先创建一个Cookie信息:
核心代码:
Cookie c = new Cookie("goxuexi", "www.goxuexi.com"); c.setMaxAge(60*60*24*7); response.addCookie(c);
package com.goxuexi.demo; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * Servlet implementation class TestCookieServlet */ @WebServlet("/TestCookieServlet") public class TestCookieServlet extends HttpServlet { private static final long serialVersionUID = 1L; /** * @see HttpServlet#HttpServlet() */ public TestCookieServlet() { super(); // TODO Auto-generated constructor stub } /** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub Cookie c = new Cookie("goxuexi", "www.goxuexi.com"); c.setMaxAge(60*60*24*7); response.addCookie(c); } /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub doGet(request, response); } }
TestCookie.java
核心代码:
Cookie[] cs = request.getCookies(); for (Cookie c : cs) { System.out.println(c.getName()+":"+c.getValue()); }
package com.goxuexi.demo; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * Servlet implementation class TestCookie */ @WebServlet("/TestCookie") public class TestCookie extends HttpServlet { private static final long serialVersionUID = 1L; /** * @see HttpServlet#HttpServlet() */ public TestCookie() { super(); // TODO Auto-generated constructor stub } /** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub Cookie[] cs = request.getCookies(); if(cs != null) for (Cookie c : cs) { System.out.println(c.getName()+":"+c.getValue()); } } } /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub doGet(request, response); } }
8.实例-使用cookie检测初访者
//使用cookie检测初访者 String result=null; boolean newUser = true; Cookie[] cookies = request.getCookies(); if(cookies!=null){ for(int i=0;i<cookies.length;i++){ Cookie c = cookies[i]; if((c.getName().equals("repeatVisitor"))&&(c.getValue().equals("yes"))){ newUser = false; break; } } } if (newUser) { Cookie returnVisitorCookie = new Cookie("repeatVisitor", "yes"); returnVisitorCookie.setMaxAge(60 * 60 * 24 * 365); response.addCookie(returnVisitorCookie); result = "Welcome Aboard"; } else { result = "Welcome Back"; } System.out.println(result);
Servlet第六课:Cookie的使用,布布扣,bubuko.com
标签:servlet
原文地址:http://blog.csdn.net/junzaivip/article/details/38239911