zoukankan      html  css  js  c++  java
  • Servlet课程0426(九)Servlet服务器端创建Cookie和客户端读取Cookie

    服务器端创建Cookie:

    Win7默认Cookie位置

    C:UsersAdministratorAppDataRoamingMicrosoftWindowsCookies

    CookieTest1.java

    //CookieTest1
    package com.tsinghua;
    
    import javax.servlet.http.*;
    import java.io.*;
    
    public class CookieTest1 extends HttpServlet{
    	public void doGet(HttpServletRequest req, HttpServletResponse res)
    	{
    
    		try{
    
    		//解决中文乱码
    		res.setCharacterEncoding("gbk");
    		PrintWriter pw = res.getWriter();
    		pw.println("<html>");
    		//当用户访问该Servlet时,就将信息创建到该用户的cookie中
    
    		//1.现在服务器端创建一个cookie
    		Cookie myCookie = new Cookie("color1","red");
    
    		//2.该cookie的存在时间
    		myCookie.setMaxAge(30);
    		//如果你不设置存在时间,那么该cookie将不会保存
    
    		//3.将该cookie写回到客户端
    		res.addCookie(myCookie);
    
    		pw.println("已经创建了cookie");
    
    
    		}
    		catch(Exception ex)
    		{
    			ex.printStackTrace();
    		}
    
    	}
    
    	 //处理get请求
    	 //req用于获得客户端(浏览器)的信息
    	 //res用于向 客户端(浏览器)返回信息
    	public void doPost(HttpServletRequest req, HttpServletResponse res)
    	{
    
    		this.doGet(req,res);
    
    	}
    
    
    }

     客户端读取Cookie

    //如何读取Cookie案例
    package com.tsinghua;
    
    import javax.servlet.http.*;
    import java.io.*;
    
    public class CookieTest2 extends HttpServlet{
        public void doGet(HttpServletRequest req, HttpServletResponse res)
        {
    
            try{
    
            //解决中文乱码
            res.setCharacterEncoding("gbk");
            PrintWriter pw = res.getWriter();
    
            //客户端得到所有cookie信息
            Cookie[] allCookies = req.getCookies();
            int i = 0;
            //如果allCookie不为空
            if(allCookies != null)
            {
                //从中取出cookie
                for (i = 0; i<allCookies.length; i++)
                {
                    //依次取出
                    Cookie temp = allCookies[i];
    
                    if(temp.getName().equals("color1"))
                    {
                        //得到cookie的值
                        String val = temp.getValue();
                        pw.println("color1="+val);
                        break;
                    }
                }
                if(allCookies.length == i)
                {
                    pw.println("cookie过期");
                }
            }else
                {
                    pw.println("不存在color1这个cookie/或者是过期");
                }
    
    
            }
            catch(Exception ex)
            {
                ex.printStackTrace();
            }
    
        }
    
         //处理get请求
         //req用于获得客户端(浏览器)的信息
         //res用于向 客户端(浏览器)返回信息
        public void doPost(HttpServletRequest req, HttpServletResponse res)
        {
    
            this.doGet(req,res);
    
        }
    
    
    }
  • 相关阅读:
    2018 秋招找工作总结
    Java 实现 LRU 缓存
    历时2个月,星云链DApp开发总结
    Java 版快速排序 + 最挫的优化
    MacOS 下防止 rm 命令误删
    Java使用Log日志系统(common-logging和log4j)
    IDEA+Maven+Spring+SpringMVC+SpringJDBC整合Demo
    Java简单实现并发编程
    设计模式学习笔记——单例模式
    Java获取网页内容
  • 原文地址:https://www.cnblogs.com/beautiful-code/p/5437071.html
Copyright © 2011-2022 走看看