import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import java.net.URLEncoder;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class CookieUtil {
        private static String default_path
             ="/";
        private static int default_age =365*24*3600;
    /**
     *@Function: 添加cookie 可設置時間
     *@Author: zzp
     *@param name
     *@param value
     *@param response
     *@param age
     *@throws UnsupportedEncodingException  void
     *@Date: 2014-2-19
     *@Modifications:
     *@Modifier Name; Date; The Reason for Modifying
     *
     */
        public static void addCookie(String name,String value,
                        HttpServletResponse response,int age) throws UnsupportedEncodingException{
                Cookie cookie =
                    new Cookie(name,URLEncoder.encode(value,"utf-8"));
                cookie.setMaxAge(age);
                cookie.setPath(default_path);
                response.addCookie(cookie);
        }
        /**
         *@Function: 添加cookie 默認時間
         *@Author: zzp
         *@param name
         *@param value
         *@param response
         *@throws UnsupportedEncodingException  void
         *@Date: 2014-2-19
         *@Modifications:
         *@Modifier Name; Date; The Reason for Modifying
         *
         */
        public static void addCookie(String name,String value,HttpServletResponse
                        response) throws UnsupportedEncodingException{
                addCookie(name,value,response,default_age);
        }
        /**
         *@Function: 展示所有cookie
         *@Author: zzp
         *@param name
         *@param request
         *@return
         *@throws UnsupportedEncodingException  String
         *@Date: 2014-2-19
         *@Modifications:
         *@Modifier Name; Date; The Reason for Modifying
         *
         */
        public static String findCookie(String name,HttpServletRequest request)
               throws UnsupportedEncodingException{
                String value = null;
                Cookie[] cookies = request.getCookies();
                if(cookies!=null){
                        for(int i=0;i<cookies.length;i++){
                                Cookie cookie = cookies[i];
                                if(cookie.getName().equals(name)){
                                        value = URLDecoder.decode(cookie.getValue(), "utf-8");
                                }
                        }
                }
                return value;
        }
        /**
         *@Function: 刪除cookie
         *@Author: zzp
         *@param name
         *@param response  void
         *@Date: 2014-2-19
         *@Modifications:
         *@Modifier Name; Date; The Reason for Modifying
         *
         */
        public static void deleteCookie(String name,HttpServletResponse
                        response){
                Cookie cookie = new Cookie(name,"");
                cookie.setMaxAge(0);
                cookie.setPath(default_path);
                response.addCookie(cookie);
        }
}

工具类_java 操作cookie的更多相关文章

  1. C#常用工具类——Excel操作类

    /// 常用工具类——Excel操作类 /// <para> ------------------------------------------------</para> / ...

  2. [C#] 常用工具类——文件操作类

    /// <para> FilesUpload:工具方法:ASP.NET上传文件的方法</para> /// <para> FileExists:返回文件是否存在&l ...

  3. C#常用工具类——Excel操作类(ZT)

    本文转载于: http://www.cnblogs.com/zfanlong1314/p/3916047.html /// 常用工具类——Excel操作类 /// <para> ----- ...

  4. java工具类--数据库操作封装类

    java对数据库操作简单处理,如下代码即可,封装了 增删改查及获取连接.关闭连接. 代码如下: package com.test; import java.sql.Connection; import ...

  5. Cookie工具类(获取cookie,设置cookie)

    import java.io.UnsupportedEncodingException; import java.net.URLDecoder;import java.net.URLEncoder; ...

  6. 简单了解Spring中常用工具类_java - JAVA

    文章来源:嗨学网 敏而好学论坛www.piaodoo.com 欢迎大家相互学习 文件资源操作 Spring 定义了一个 org.springframework.core.io.Resource 接口, ...

  7. java Arrays工具类的操作

    package java08; /* java.util.Arrays是一个与数组相关的工具类,里面提供了大量的静态方法,用来实现数组常见的操作 public static String toStri ...

  8. Asp.Net 常用工具类---Config操作(7)

    近期工作比较忙,忙到忘记写博客(自己的借口,主要加班下班后不想动). 月初的时候,打算每两天写一篇博文,分享自己的一些心得和开发体验,无奈现在只写到第六篇,然而时间已经是20号,岁月不饶人! 总想写点 ...

  9. 【C#】工具类-FTP操作封装类FTPHelper

    转载:http://blog.csdn.net/gdjlc/article/details/11968477 using System; using System.Collections.Generi ...

随机推荐

  1. [C++空间分配]new运算符、operator new、placement new的区别于联系

    先科普一下: 1. new的执行过程: (1)通过operator new申请内存 (2)使用placement new调用构造函数(内置类型忽略此步) (3)返回内存指针 2. new和malloc ...

  2. Centos for php+mysql+apache

    一.安装 MySQL 首先来进行 MySQL 的安装.打开超级终端,输入: [root@localhost ~]# yum install mysql mysql-server 安装完毕,让 MySQ ...

  3. css复合属性的写法

    # 复合属性也称为 "shortcut" property (快捷属性),它作用是为了简化代码,提高页面运行的效率. # 下面的内容会介绍 2 个比较常用的复合属性 "f ...

  4. RelativeLayout布局下实现控件平分空间

    起源:使用惯LinearLayout的朋友都知道,若想实现对屏幕的等分,只需要设置Layout_weight的值即可. 可是在RelativeLayout布局下实现等分却不是那么容易. 下面就简单介绍 ...

  5. MarkWord

    MarkWord - 可发布博客的 Markdown编辑器 代码开源 1 /// <summary> 2 /// 同步呈现 3 /// </summary> 4 /// < ...

  6. Python核心编程笔记---- print

    在仅用变量名时,输出的字符串是用单引号括起来的.这个是为了让非字符串对象也可能以字符的形式显示在屏幕上. 而print 函数打印出来的是变量的值. print 调用的是str()方法.而仅用变量名时调 ...

  7. 嵌入式davinci电路元素基础和PWM模块

    1,DAC_OUT和DAC_OUTB是AD9912输出的差分信号. 2,电容器储存电荷的能力,常用的单位是F.uF.nF.pFUF大了好还是UF小了好,要根据电路自身需要而设计, 要看电路滤波是在高频 ...

  8. 《我是一只IT小小鸟》 读后感

    <我是一只IT小小鸟>一只是我想读list中一个本,但是上次去当当买的时候,竟然缺货了...昨天监考,实在无聊,就上网看电子书了,一天就看完了,看得有点仓促,所以理解估计不深. 1.刘帅: ...

  9. IE6兼容性问题及IE6常见bug详细汇总---转载

    1.IE6怪异解析之padding与border算入宽高 原因:未加文档声明造成非盒模型解析 解决方法:加入文档声明<!doctype html> 2.IE6在块元素.左右浮动.设定mar ...

  10. js判断终端是手机还是电脑

    $(function(){ function browserRedirect() { var sUserAgent= navigator.userAgent.toLowerCase(); var bI ...