CookieUitl
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.jsp.PageContext;
/**
*
* cookie操作类
*<br>功能:对cookie进行增查改删
*/
public class CookieUitl
{
/**
* 往客户端写入Cookie。
* <pre>
* 说明:
* maxAge:(单位秒)
* 0:删除Cookie
* -1:页面关闭时删除cookie
* </pre>
* @param name String
* @param value String
* @param maxAge int
* @param context PageContext
*/
public static void addCookie(String name,String value,int maxAge,PageContext context)
{
HttpServletResponse response=(HttpServletResponse)context.getResponse();
HttpServletRequest req=(HttpServletRequest)context.getRequest();
addCookie( name, value,maxAge, req, response);
}
/**
* 写入会话cookie,在页面关闭的时候这个cookie自动删除。
* @param name cookie名称
* @param value cookie值。
* @param context
*/
public static void addCookie(String name,String value,PageContext context)
{
HttpServletResponse response=(HttpServletResponse)context.getResponse();
HttpServletRequest req=(HttpServletRequest)context.getRequest();
addCookie( name, value,-1, req, response);
}
/**
* 添加cookie,cookie的生命周期为关闭浏览器即消失
* @param name
* @param value
* @param req
* @param response
*/
public static void addCookie(String name,String value,HttpServletRequest req,HttpServletResponse response)
{
addCookie( name, value,-1, req, response);
}
/**
* 添加cookie
* @param name cookie名称
* @param value cookie值
* @param maxAge cookie存活时间
* @param req
* @param response
*/
public static void addCookie(String name,String value,int maxAge,HttpServletRequest req,HttpServletResponse response)
{
if(response==null)return;
Cookie cookie=new Cookie(name,value);
cookie.setPath(req.getContextPath());
cookie.setMaxAge(maxAge);
response.addCookie(cookie);
}
/**
* 删除cookie
* @param name
* @param context
*/
public static void delCookie(String name,PageContext context)
{
HttpServletResponse response=(HttpServletResponse)context.getResponse();
HttpServletRequest request=(HttpServletRequest)context.getRequest();
delCookie(name,request, response);
}
/**
* 删除cookie
* @param name
* @param response
*/
public static void delCookie(String name,HttpServletRequest request, HttpServletResponse response)
{
addCookie(name, "", 0, request,response);
}
/**
* 根据Cookie名取得Cookie的值.
* 如果cookie 为空 则返回 null;
* @param name String
* @param context PageContext
* @return String
*/
public static String getValueByName(String name,PageContext context)
{
HttpServletRequest request=(HttpServletRequest)context.getRequest();
String str= getValueByName(name,request);
return str;
}
/**
* 根据cookie名称取得值
* @param name
* @param request
* @return
*/
public static String getValueByName(String name,HttpServletRequest request)
{
if(request==null)return "";
Cookie cookies[]=request.getCookies();
Cookie sCookie=null;
String svalue=null;
String sname=null;
if(cookies==null)
return null;
for(int i=0;i< cookies.length;i++)
{
sCookie=cookies[i];
sname=sCookie.getName();
if(sname.equals(name))
{
svalue=sCookie.getValue();
break;
}
}
return svalue;
}
/**
* 根据Cookie名判断Cookie是否存在.
* @param name String
* @param context PageContext
* @return String
*/
public static boolean isExistByName(String name,PageContext context)
{
HttpServletRequest request=(HttpServletRequest)context.getRequest();
return isExistByName(name,request);
}
/**
*
* @param name
* @param request
* @return
*/
public static boolean isExistByName(String name,HttpServletRequest request)
{
Cookie cookies[]=request.getCookies();
Cookie sCookie=null;
String sname=null;
boolean isExist=false;
if(cookies==null)
return false;
for(int i=0;i< cookies.length;i++)
{
sCookie=cookies[i];
sname=sCookie.getName();
if(sname.equals(name))
{
isExist=true;
break;
}
}
return isExist;
}
}
CookieUitl的更多相关文章
随机推荐
- 【OpenFOAM案例】01 elbow
本案例演示利用OpenFOAM的icoFoam求解器计算弯曲管道中的混合流动问题. 1 拷贝tutorials文件 启动终端,且拷贝tutorials文件夹中的文件.利用命令: cp -r $FOAM ...
- MySQL字符集详解
Reference: https://www.cnblogs.com/wcwen1990/p/6917109.html MySQL字符集详解 一.字符集和校验规则 字符集是一套符合和编码,校验规 ...
- C语言 goto语句
/* goto语句 */ #include <stdio.h> #include <stdlib.h> #include <string.h> /* goto语句也 ...
- 当我们直接打印定义的对象的时候,隐含的是打印toString()的返回值。
以下介绍的三种方法属于Object: (1) finalize方法:当一个对象被垃圾回收的时候调用的方法. (2) toString():是利用字符串来表示对象. 当我们直接打印定义的对象的时 ...
- 乾坤合一~Linux设备驱动之块设备驱动
1. 题外话 在蜕变成蝶的一系列学习当中,我们已经掌握了大部分Linux驱动的知识,在乾坤合一的分享当中,以综合实例为主要讲解,在一个月的蜕茧成蝶的学习探索当中,觉得数据结构,指针,链表等等占据了代码 ...
- BarTender中如何调整数据输入表单的大小?
BarTender中的表单设计,是一个简单而又复杂的操作.简单的是它提供很多实用的工具,帮助用户实现更多的功能,复杂的是要对其进行排版设计,这就要看小伙伴们的个人要求高低了. 自定义数据输入表单时,你 ...
- iOS - 解决 Cocoapods 第三方库下载不下来
Cocoapods 第三方库下载不下来问题:一些第三方的库由于网的原因下载不下里 (解决思路:(原理) cocoapods 下载的时候 会先从缓存中拿 缓存中没有再去下载 所以可以把下载不下来的放到缓 ...
- Spark连接MongoDB之Scala
MongoDB Connector for Spark Spark Connector Scala Guide spark-shell --jars "mongo-spark-connect ...
- Ant 批量执行jmeter 脚本
一.环境准备: 1.Jdk1.6或以上:http://www.oracle.com/technetwork/java/javase/downloads/index.html 命令行输入:java -v ...
- java学习之路--简单基础的面试题
1.面向对象的特征有哪些方面? 答:面向对象的特征主要有以下几个方面: 1)抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面.抽象只关注对象有哪些属性和行为,并不关注 ...