• 20160329javaweb之JSP -cookie入门


    一、什么是会话?
    •会话可简单理解为:用户开一个浏览器,点击多个超链接,访问服务器多个web资源,然后关闭浏览器,整个过程称之为一个会话。
    会话过程中要解决的一些问题?
    •每个用户在使用浏览器与服务器进行会话的过程中,不可避免各自会产生一些数据,程序要想办法为每个用户保存这些数据。
    •例如:用户点击超链接通过一个servlet购买了一个商品,程序应该想办法保存用户购买的商品,以便于用户点结帐servlet时,结帐servlet可以得到用户购买的商品为用户结帐。
    二、保存会话数据的两种技术
    Cookie
    Cookie是客户端技术,程序把每个用户的数据以cookie的形式写给用户各自的浏览器。当用户使用浏览器再去访问服务器中的web资源时,就会带着各自的数据去。这样,web资源处理的就是用户各自的数据了。
    Session
    Session是服务器端技术,利用这个技术,服务器在运行时可以为每一个用户的浏览器创建一个其独享的session对象,由于session为用户浏览器独享,所以用户在访问服务器的web资源时,可以把各自的数据放在各自的session中,当用户再去访问服务器中的其它web资源时,其它web资源再从用户各自的session中取出数据为用户服务。
     
    cookie 保存上次访问时间代码:
    package com.dzq.cookie;
    
    import java.io.IOException;
    import java.util.Date;
    
    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;
    
    
    @WebServlet("/CookieDemo1")
    public class CookieDemo1 extends HttpServlet {
    
    	private static final long serialVersionUID = 1L;
    
    	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    		//response.setHeader("Set-Cookie", "name=bingxiang");
    		response.setContentType("text/html;charset=utf-8");
    		Cookie cs[]=request.getCookies();
    		Cookie findc=null;
    		if(cs!=null){
    		for(Cookie c:cs){
    			if("lasttime".equals(c.getName())){
    				findc=c;
    			}
    		}
    		}
    		if(findc==null){
    			response.getWriter().write("No-cookie");
    		}else{
    			Long lasttime=Long.parseLong(findc.getValue());
    			response.getWriter().write("Yes-cookie"+new Date(lasttime).toLocaleString());
    			
    		}
    		Date date=new Date();
    		Cookie c=new Cookie("lasttime",date.getTime()+"");
    		response.addCookie(c);
    	}
    
    	
    	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    		doGet(request, response);
    	}
    
    }
    

      三、cookie细节

     
     
     
  • 相关阅读:
    [转]google gflags 库完全使用
    机器学习者面试,看这10个建议
    分享10个数据分析的小技巧(Python)
    工作学习上实用的编程相关知识分享
    前端React 框架- UmiJS有听说过吗?
    PyTorch如何构建深度学习模型?
    Sigmoid 和 Softmax 如何进行函数处理分类?
    从零开始学习机器学习最简单的 kNN 算法
    监督学习中的决策树算法(含代码)
    可视化Bert网络,发掘其中真实世界的嵌入
  • 原文地址:https://www.cnblogs.com/xiaoduc-org/p/5326830.html
Copyright © 2020-2023  润新知