`
xiang04551ran
  • 浏览: 5810 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

(转)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<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;
	}
分享到:
评论

相关推荐

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

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

    Java 模拟cookie登陆简单操作示例

    Java 模拟Cookie 登陆简单操作示例 在本文中,我们将介绍 Java 模拟 Cookie 登陆的简单操作,结合实例形式分析了 Java 模拟 Cookie 登陆的相关原理与基本实现技巧。本示例主要是为了演示如何使用 Java 语言模拟 ...

    java 操作cookie

    Java 操作 Cookie Java 操作 Cookie 是一种常用的 Web 开发技术,用于在服务器端和客户端之间交换数据。Cookie 是一种小文本文件,存储在客户端浏览器中,用于记录用户的行为和偏好。下面我们将详细介绍 Java 操作 ...

    java对cookie的操作.doc

    总的来说,Java对Cookie的操作主要包括创建、读取、设置生命周期和路径。理解这些基本操作并对其进行适当封装,将有助于提高Java Web应用的开发效率和代码质量。在实际项目中,还应注意安全性和性能优化,比如限制...

    java对cookie的操作2.doc

    java对cookie的操作2.doc

    JAVA简单cookie操作

    JAVA简单cookie操作,自己去http://sacmoney.net申请个账号做测试.

    java操作cookie

    总之,Java中的Cookie操作涉及了服务器与客户端之间的交互,理解其创建、读取、更新和删除的原理对于Web应用的开发至关重要。同时,注意处理好编码问题,以防止乱码现象的发生。通过以上介绍,你应该对Java操作...

    java中cookie的使用教程

    - Cookie大小限制:每个Cookie的大小不能超过4KB,且浏览器对每个站点的Cookie数量也有限制。 - 隐私问题:因为Cookie存储在客户端,所以不应存储敏感信息,如密码明文。 8. **替代方案** 对于需要大量存储或...

    JAVA操作COOKIE.docx

    JAVA 操作 COOKIE Cookie 是一种小型文本文件, Webseite 服务器通过 HTTP 头将其发送到浏览器端,浏览器将其存储在本地,下次访问同一网址时,浏览器将其发送回服务器端,以便服务器端识别用户身份、追踪用户行为...

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

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

    JAVA操作COOKIE

    Java 操作 COOKIE 主要涉及到对 HTTP 协议中的 Cookie 进行创建、读取、修改和删除等操作。Cookie 是一种服务器与客户端之间保持状态的机制,常用于用户登录状态的维持、个性化设置的存储等场景。以下是关于 Java ...

    java cookie 例子

    在Java Servlet中,我们主要通过`javax.servlet.http.Cookie`类来操作Cookie。以下是一个创建和添加Cookie到响应的示例: ```java // 创建一个Cookie对象 Cookie cookie = new Cookie("username", "JohnDoe"); // ...

    cookie接口 实现本地或客户端的cookie的创建和读取

    提供的实现类可能包含了对Cookie操作的封装,如创建、读取、更新和删除的方法。测试类则用于验证这些功能的正确性,通常会使用JUnit或其他单元测试框架编写,通过模拟请求和响应来测试Cookie操作。 在提供的压缩包...

    JAVA操作COOKIE.pdf

    总之,Java中的Cookie操作涉及到创建、读取、更新和删除,以及跨域共享。理解这些基本操作对于开发Web应用程序至关重要,特别是涉及用户会话管理和个性化设置等功能时。正确地使用Cookie可以提升用户体验,同时要...

    discuz与java通过cookie共享登陆

    标题“Discuz与Java通过Cookie共享登录”涉及的是在Web开发中如何实现不同系统间用户登录状态的共享,特别是Discuz论坛系统与基于Java的应用之间的交互。Discuz是一款流行的开源社区论坛软件,而Java是一种广泛使用...

    JS cookie Java cookie regex 整理结果

    在JavaScript中,我们可以使用`match()`、`search()`或`test()`方法与正则表达式配合,实现对Cookie字符串的复杂操作。 在实际应用中,JS和Java Cookie结合使用可以实现更高级的功能。例如,服务器通过Java Cookie...

    java网络爬虫-通过登陆网站携带COOKIE信息爬取网站数据

    总的来说,这个项目涉及了Java网络编程、HTTP请求、登录处理、COOKIE管理、HTML解析以及数据库操作等多个方面,这些都是Java网络爬虫开发中常见的核心技术。通过实践和学习这些知识点,你可以构建出强大的爬虫系统,...

    aaaaaa.zip_cookie_cookie java_java cookie

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

Global site tag (gtag.js) - Google Analytics