`

java Cookie操作总结

 
阅读更多
java对cookie的操作比较简单,主要介绍下建立cookie和读取cookie,以及如何设定cookie的生命周期和cookie的路径问题。

可在同一应用服务器内共享方法:设置cookie.setPath("/")
本机tomcat/webapp下面有两个应用:webapp_a和webapp_b,
1.原来在webapp_a下面设置的cookie,在webapp_b下面获取不到,path默认是产生cookie的应用的路径。
2.若在webapp_a下面设置cookie的时候,增加一条cookie.setPath("/");或者cookie.setPath("/webapp_b/");
就可以在webapp_b下面获取到cas设置的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数组
Cookie[] cookies = request.getCookies();
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<String,Cookie> 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<String,Cookie> ReadCookieMap(HttpServletRequest request){  
    Map<String,Cookie> cookieMap = new HashMap<String,Cookie>();
    Cookie[] cookies = request.getCookies();
    if(null!=cookies){
        for(Cookie cookie : cookies){
            cookieMap.put(cookie.getName(), cookie);
        }
    }
    return cookieMap;
}



转自:http://www.cnblogs.com/muzongyan/archive/2010/08/30/1812552.html

分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    java对cookie的操作java对cookie的操作

    Java中的Cookie操作是Web开发中常见的一种技术,用于在客户端和服务器之间传递状态信息。Cookie是一种小型文本文件,由服务器发送到用户的浏览器,并由浏览器在后续请求中返回给服务器。以下将详细介绍Java如何进行...

    java cookie 例子

    总结一下,Java Servlet中的Cookie管理主要包括创建、设置属性(如有效期和路径)、读取、修改和删除。这个例子中的压缩包可能包含了一个简单的Java Servlet项目,演示了如何在服务器端和客户端之间使用Cookie进行...

    JS cookie Java cookie regex 整理结果

    总结来说,JS和Java Cookie提供了在客户端和服务器端存储和读取数据的方法,而Regex则作为一种强大的文本处理工具,用于处理和验证Cookie的格式。掌握这些技术,对于Web开发人员来说至关重要,能够帮助他们构建更加...

    aaaaaa.zip_cookie_cookie java_java cookie

    **JspUtil与Cookie操作** 在提供的文件名"JspUtil"中,我们可以推测这可能是一个Java类,包含了对JSP页面进行辅助操作的方法,包括处理Cookie的函数。在实际开发中,经常会编写这样的工具类来封装Cookie的操作,如...

    JAVA操作COOKIE.pdf

    标题:JAVA操作COOKIE.pdf 在Web开发领域,Cookie作为一种服务器通过HTTP响应发送到用户浏览器并保存在本地的一小段数据,一直扮演着非常重要的角色。它能够帮助服务器记录用户的偏好设置,跟踪会话状态,以及存储...

    java操作cookie示例(删除cookie)

    总结一下,Java操作Cookie主要包括设置Cookie(设置键值、生存时间和路径),读取Cookie(通过`getCookies()`方法)以及删除Cookie(创建一个MaxAge为0的新Cookie)。理解这些基本操作对于进行Web开发是至关重要的,...

    需要cookie验证的java抓包程序

    总结,这个Java抓包程序专注于处理需要cookie验证的网页,通过Java的网络编程能力实现HTTP请求的发送,处理cookie,抓取并解析数据包,以获取和分析用户信息。对于开发者来说,理解并使用这个程序可以帮助他们深入...

    java URLConnection全面总结(包括cookie的详细操作).docx

    本文将全面总结使用`URLConnection`处理HTTP请求,特别是涉及如何处理Cookie的详细操作。 一、URL和字符集的准备 在开始处理HTTP请求前,你需要一个URL地址和指定的字符集。URL代表统一资源定位符,用于指定网络...

    JAVA通过Session和Cookie实现网站自动登录

    ### JAVA通过Session和Cookie实现网站自动登录 在现代Web应用开发中,用户认证与授权是极为重要的环节之一。为了提供良好的用户体验,很多网站都提供了自动登录功能,即用户首次登录后,在一定时间内再次访问该网站...

    cookie读写,子cookie

    在Java中,我们可以使用HttpServletResponse和HttpServletRequest接口来操作Cookie。写入Cookie的过程通常如下: 1. 创建一个Cookie对象,例如: ```java Cookie cookie = new Cookie("key", "value"); ``` 2. 设置...

    java对cookie的操作[收集].pdf

    总结来说,Java中的Cookie操作涉及创建、存储、读取和删除Cookie,通常与HTTP请求和响应交互。Apache HttpClient库提供了一套强大的工具,使得开发者可以方便地管理Cookie,从而实现会话管理。`...

    java jsp Cookie学习资料

    ### Java JSP Cookie 学习...通过本文的学习,我们了解到 Cookie 是如何在客户端存储信息的,以及如何在 Java JSP 应用中创建和操作 Cookie。掌握这些知识有助于开发者更好地管理用户的会话状态,实现用户认证等功能。

    Cookie简介及JSP处理Cookie的方法.doc

    在JSP(JavaServer Pages)中,我们可以方便地操作Cookie。创建一个新的Cookie对象,你可以使用以下代码: ```java Cookie cookie_name = new Cookie("Parameter", "Value"); ``` 这里的"Parameter"是Cookie的名称...

    Cookie与Session机制

    在Java Web开发中,Cookie通过`javax.servlet.http.Cookie`类进行管理和操作。开发者可以创建Cookie对象并设置其属性,然后通过`HttpServletResponse`的`addCookie()`方法将其发送到客户端。同样,服务器可以通过`...

    Cookie操作方法

    #### Java Servlets中的Cookie操作 在Java Servlets中,可以使用`HttpServletRequest`和`HttpServletResponse`接口来操作Cookie。 ##### 创建并保存Cookie ```java @RequestMapping("/saveCookie") public void ...

    jsp操作cookie实例

    在Java Server Pages(JSP)中,我们可以通过内置的HttpServletResponse和HttpServletRequest对象来实现对Cookie的操作。本实例将详细介绍如何在JSP中创建、读取、更新和删除Cookie。 ### 一、创建Cookie 创建...

    Java读写Cookie记录的方法

    总结,Java读写Cookie主要包括创建Cookie对象,设置属性(如名称、值和有效期),然后通过HttpServletResponse写入到响应,以及通过HttpServletRequest读取请求中的Cookie。这些操作对于跟踪用户会话、存储用户偏好...

    javaweb之cookie和session的应用

    总结,理解并熟练运用Cookie和Session是Java Web开发中的必备技能。正确地管理和使用它们,能够提升用户体验,保证应用的安全性和效率。在实际项目中,还需要结合其他技术,如Token、Cache等,以实现更高效和安全的...

    Java Web程序设计入门课件-Cookie对象.pptx

    总结来说,Cookie是Java Web开发中实现会话管理的重要工具,通过它可以跟踪用户的行为,提供个性化服务,并在服务器与浏览器之间维持状态。理解并熟练使用Cookie对于进行有效的Web应用程序设计至关重要。

    java Session cookie

    Java Session Cookie是Web应用程序中用于实现用户会话跟踪的一种机制。在HTTP协议中,由于其无状态特性,服务器无法在多次请求之间保持用户的上下文信息。为了解决这个问题,Session和Cookie应运而生,而Session ...

Global site tag (gtag.js) - Google Analytics