JSP小案例之cookie管理

cookie是小段文本信息,通过使用cookie可以标识用户身份、记录用户名以及密码、跟踪重复用户。cookie在服务器端生成并且发送给浏览器,浏览器将cookie的key/value保存到指定的目录当中,服务器的名称与值可以有服务器端定义。通过cookie的getCookies()方法可以获取到所有的cookie对象集合,然后通过cookie对象的getName()方法获取到指定名称的cookie,再通过getValue()方法就可以获取到cookie对象的值。另外,将一个cookie对象发送到客户端使用了response对象的addCookies()方法。

客户端代码(文件名为CookieClient.jsp):

<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>




Cookie案例客户端


	<%
		String welcome = "第一次访问";
		String[] info = new String[]{"","",""};
		Cookie[] cook = request.getCookies();
		if(cook != null)
		{
			for(int i = 0;i < cook.length;i++)
			{
				if(cook[i].getName().equals("mrCookieInfo"))
				{
					info = cook[i].getValue().split("#");
					welcome = ",欢迎回来!";
				}
			}
		}
	%>
	<%=info[0]+welcome %>
		
  • 姓        名:
  • 出生日期:
  • 邮箱地址:
服务器端代码(文件名为CookieServer.jsp)
<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>




Cookie案例服务器端


	<%
		String name = request.getParameter("name");
		String birthday = request.getParameter("birthday");
		String mail = request.getParameter("mail");
		Cookie myCook = new Cookie("mrCookieInfo",name+"#"+birthday+"#"+mail);
		myCook.setMaxAge(60*60*24*365);  
		response.addCookie(myCook);  
	%>
	表单提交成功
	
  • 姓名:<%=name %>
  • 出生日期:<%=birthday %>
  • 电子邮箱:<%=mail %>
  • 返回
客户端运行结果:

JSP小案例之cookie管理_第1张图片

服务器端运行结果:

JSP小案例之cookie管理_第2张图片

第一次访问网页的时候客户端页面的左上角不会提示用户姓名,只有第二次访问的时候,服务器端才会把第一次用户访问页面填入的个人信息反馈给客户端,这个时候在客户端的页面当中才会显示相应的欢迎信息。这就体现出cookie的作用了。

你可能感兴趣的:(程序,数据结构,java)