java怎么设置cookie java设置cookie方法流程
作者: 来源: 2021-07-18 00:02:14
java怎么设置cookie?cookie作为java开发中十分重要的一环,许多朋友还不会设置,下文介绍java设置cookie方法流程,一起和小乐哥来了解下吧!
- PC版
Java SE Runtime Environment(JRE环境)v9.0u179 官方版
大小:26.3MB 语言:简体中文
类型:编程开发 等级:
立即下载 查看详情
java设置cookie方法流程:
java对cookie的操作比较简单,主要介绍下建立cookie和读取cookie,以及如何设定cookie的生命周期和cookie的路径问题。
建立一个无生命周期的cookie,即随着浏览器的关闭即消失的cookie,代码如下
--------------------------------
HttpServletRequest request
HttpServletResponse response
Cookie cookie = new Cookie("cookiename","cookievalue");
response.addCookie(cookie);
--------------------------------
下面建立一个有生命周期的cookie,可以设置他的生命周期
--------------------------------
cookie = new Cookie("cookiename","cookievalue");
cookie.setMaxAge(3600);
//设置路径,这个路径即该工程下都可以访问该cookie 如果不设置路径,那么只有设置该cookie路径及其子路径可以访问
cookie.setPath("/");
response.addCookie(cookie);
--------------------------------
下面介绍如何读取cookie,读取cookie代码如下
--------------------------------
Cookie[] cookies = request.getCookies();//这样便可以获取一个cookie数组
for(Cookie cookie : cookies){
cookie.getName();// get the cookie name
cookie.getValue(); // get the cookie value
}
--------------------------------
上面就是基本的读写cookie的操作。我们在实际中最好进行一下封装,比如增加一个cookie,我们关注的是cookie的name,value,生命周期,所以进行封装一个函数,当然还要传入一个response对象,addCookie()代码如下
--------------------------------
/**
* 设置cookie
* @param response
* @param name cookie名字
* @param value cookie值
* @param maxAge cookie生命周期 以秒为单位
*/
public static void addCookie(HttpServletResponse response,String name,String value,int maxAge){
Cookie cookie = new Cookie(name,value);
cookie.setPath("/");
if(maxAge>0) cookie.setMaxAge(maxAge);
response.addCookie(cookie);
}
--------------------------------
读取cookie的时候,为了方便我们的操作,我们希望封装一个函数,只要我们提供cookie的name,我们便可以获取cookie的value,带着这个想法,很容易想到将cookie封装到Map里面,于是进行下面的封装
--------------------------------
/**
* 根据名字获取cookie
* @param request
* @param name cookie名字
* @return
*/
public static Cookie getCookieByName(HttpServletRequest request,String name){
Map cookieMap = ReadCookieMap(request);
if(cookieMap.containsKey(name)){
Cookie cookie = (Cookie)cookieMap.get(name);
return cookie;
}else{
return null;
}
}
/**
* 将cookie封装到Map里面
* @param request
* @return
*/
private static Map ReadCookieMap(HttpServletRequest request){
Map cookieMap = new HashMap();
Cookie[] cookies = request.getCookies();
if(null!=cookies){
for(Cookie cookie : cookies){
cookieMap.put(cookie.getName(), cookie);
}
}
return cookieMap;
}
--------------------------------
- 百度云盘下载速度慢解决方法2017 百度网盘下载速度太慢怎么办
- 2017国庆节抢票攻略 2017年国庆抢票日历
- photoshop生成器出现问题怎么办 ps生成器出现问题解决方法
- 三星电视hu9800怎么样 三星电视hu9800配置评测
- 三星notebook7spin怎么样 三星notebook7spin笔记本评测
- 12306新验证码怎么破解 12306新验证码破解方案曝光
- 驱动人生一键解决设备管理器有叉号、问号、感叹号教程
- 360云盘关停怎么回事 360云盘关闭服务原因介绍
- win10预览版10565怎么样 win10预览版10565上手体验视频
- adobe flash player因过期而遭到阻止怎么办
- 本类推荐
- 本类排行
- 1百度云盘下载速度慢解决方法2017 百度网盘下载速度太慢怎么办
- 22017国庆节抢票攻略 2017年国庆抢票日历
- 3photoshop生成器出现问题怎么办 ps生成器出现问题解决方法
- 4三星电视hu9800怎么样 三星电视hu9800配置评测
- 5三星notebook7spin怎么样 三星notebook7spin笔记本评测
- 612306新验证码怎么破解 12306新验证码破解方案曝光
- 7驱动人生一键解决设备管理器有叉号、问号、感叹号教程
- 8360云盘关停怎么回事 360云盘关闭服务原因介绍
- 9win10预览版10565怎么样 win10预览版10565上手体验视频
- 10adobe flash player因过期而遭到阻止怎么办
- 热门软件
- 热门标签