Java_CookieUtil
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的更多相关文章
随机推荐
- poj 3349:Snowflake Snow Snowflakes(哈希查找,求和取余法+拉链法)
Snowflake Snow Snowflakes Time Limit: 4000MS Memory Limit: 65536K Total Submissions: 30529 Accep ...
- php开发(TP框架使用)
由于最近玩了PHP,我向来有个原则,学一门服务端语言至少得玩两个框架,前段时间用PHP写了些demo+小项目,看见身边有人在使用TP,于是乎鼓捣学习学习.如何学,无非也就是做个小demo:就目前看来现 ...
- .NET NLog 详解 (三) - LayoutRender
这期将NLog Git版本指向2005-06-09,NLog v0.9 released.这个时候的代码结构升级为这样: 和上期的版本相比,最明显的莫过于原先的Appender全套更名为Target. ...
- linux脚本编程技术
linux脚本编程技术 一.什么是脚本 脚本是一个包含一系列命令序列的可执行(777)文本文件.当运行这个脚本文件时,文件中包含的命令序列将得到自动执行. 二.脚本编程 #!/bin/sh 首行固定格 ...
- Chrome书签被篡改之后的恢复
chrome书签和备份存放的路径:(XXXX为用户名)(AppData文件夹为隐藏文件夹) \Users\XXXX\AppData\Local\Google\Chrome\User Data\Defa ...
- Windows MDL原理总结
http://blog.csdn.net/tbwood/article/details/5400419 http://www.cnblogs.com/jack204/archive/2011/12/2 ...
- FastDFS简介
一.FastDFS概述: FastDFS是一个开源的轻量级分布式文件系统,他对文件进行管理,功能包括:文件存储.文件同步.文件访问(文件上传.下载)等,解决了大容量存储和负载均衡的问题,高度追求高性能 ...
- JDK 伪异步编程(线程池)
伪异步IO编程 BIO主要的问题在于每当有一个新的客户端请求接入时,服务端必须创建一个新的线程处理新接入的客户端链路,一个线程只能处理一个客户端连接.在高性能服务器应用领域,往往需要面向成千上万个客户 ...
- Python与Hack之Unix口令
1.在实验时候,先导入crypt库:必须在Unix环境下才能实现这个模块 2.代码贴一下,以后有了Unix环境试试吧: import cryptimport syssys.modules['Crypt ...
- AngularJS 学习之事件
1.ng-click指令:定义了AngularJS点击事件 <div ng-app="" ng-controller="myCtrl"> <b ...