package com.willow.util;

import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; /**
* CookieUtil用来操作cookie的存取
* @author GetInstance
*
*/
public class CookieUtil {
/**
* 添加cookie
* @param name cookie的key
* @param value cookie的value
* @param domain domain
* @param path path
* @param maxage 最长存活时间 单位为秒
* @param response
*/
public static void addCookie(String name ,String value,String domain,
int maxage,String path, HttpServletResponse response){
Cookie cookie = new Cookie(name,value);
if(domain!=null){
cookie.setDomain(domain);
}
cookie.setMaxAge(maxage);
cookie.setPath(path);
response.addCookie(cookie);
} /**
* 往根下面存一个cookie
* * @param name cookie的key
* @param value cookie的value
* @param domain domain
* @param maxage 最长存活时间 单位为秒
* @param response
*/
public static void addCookie(String name ,String value,String domain,
int maxage, HttpServletResponse response){
addCookie(name, value,domain, maxage, "/" , response);
} /**
* 从cookie值返回cookie值,如果没有返回 null
* @param req
* @param name
* @return cookie的值
*/
public static String getCookie(HttpServletRequest request, String name) {
Cookie[] cookies = request.getCookies();
if (cookies == null) return null;
for (int i = 0; i < cookies.length; i++) {
if (cookies[i].getName().equals(name)) {
return cookies[i].getValue();
}
}
return null;
} public static void removeCookie(String name, String domain, HttpServletRequest request, HttpServletResponse response) {
String cookieVal = getCookie(request,name);
if(cookieVal!=null){
CookieUtil.addCookie(name, null, domain, 0, response);
}
} public static void removeCookie(String name, HttpServletRequest request, HttpServletResponse response) {
CookieUtil.removeCookie(name, ".dhgate.com", request, response);
}
}

Java_CookieUtil的更多相关文章

随机推荐

  1. js 控制展开折叠 div html dom

    js 控制展开折叠 div    html dom <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" ...

  2. Mesa 3D

    Mesa 3D是一个在MIT许可证下开放源代码的三维计算机图形库,以开源形式实现了OpenGL的应用程序接口. OpenGL的高效实现一般依赖于显示设备厂商提供的硬件,而Mesa 3D是一个纯基于软件 ...

  3. 如果我可以重新学习iOS开发(转)

    在过去的几个月里,我一直在学习用Objective-C编写iOS app,最后我开始理清思绪.这比我想象中要难很多,也花了太长时间. 我经常遇到困难.感到沮丧,修复bug比实际写代码要花太多时间.但是 ...

  4. [Liferay6.2]核心配置文件portal.properties

    portal.properties是liferay中一个非常核心的配置文件.我们可以在liferay源代码或者解压liferay部署包中的portal-impl.jar中获得.以liferay6.2为 ...

  5. Java学习笔记(三)——运算符

    一.运算符: 1.分类: 2.java中的运算符 (1)其中,++在左,表示先加了再用,++在右,表示先用了再加. (2)% 用来求余数,也称为"取模运算符" 3.赋值运算符 4. ...

  6. android之SharedPreferes

    Android应用开发SharedPreferences存储数据的使用方法 SharedPreferences是Android中最容易理解的数据存储技术,实际上SharedPreferences处理的 ...

  7. tab_切换

    记忆: 一.这里用到了jQuery遍历---filter()方法: filter() 方法将匹配元素集合缩减为匹配指定选择器的元素. 二.HTML DOM hash属性 hash 属性是一个可读可写的 ...

  8. 【java IO】使用Java输入输出流 读取txt文件内数据,进行拼接后写入到另一个文件中

    package com.sxd.test.util; import java.io.BufferedReader; import java.io.BufferedWriter; import java ...

  9. 【微信Java开发 --1】内网穿透外网,使用外网域名可以访问到本地项目

    1.首先上https://natapp.cn/ 2.接下来在网站申请账号 3.购买免费隧道 4.为你的免费隧道设置名称以及端口号,由于本人本地的使用Tomcat做服务器,所以用惯了8080端口,因此设 ...

  10. LoadRunner替换字符串(可以同时替换多个)

    在global.h中添加代码 /* * @param char* dest 目标串,也就是替换后的新串 * @param const char* src 源字符串,被替换的字符串 * @param c ...