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操作是Web开发中常见的一种技术,用于在客户端和服务器之间传递状态信息。Cookie是一种小型文本文件,由服务器发送到用户的浏览器,并由浏览器在后续请求中返回给服务器。以下将详细介绍Java如何进行...
Java 模拟Cookie 登陆简单操作示例 在本文中,我们将介绍 Java 模拟 Cookie 登陆的简单操作,结合实例形式分析了 Java 模拟 Cookie 登陆的相关原理与基本实现技巧。本示例主要是为了演示如何使用 Java 语言模拟 ...
Java 操作 Cookie Java 操作 Cookie 是一种常用的 Web 开发技术,用于在服务器端和客户端之间交换数据。Cookie 是一种小文本文件,存储在客户端浏览器中,用于记录用户的行为和偏好。下面我们将详细介绍 Java 操作 ...
总的来说,Java对Cookie的操作主要包括创建、读取、设置生命周期和路径。理解这些基本操作并对其进行适当封装,将有助于提高Java Web应用的开发效率和代码质量。在实际项目中,还应注意安全性和性能优化,比如限制...
java对cookie的操作2.doc
JAVA简单cookie操作,自己去http://sacmoney.net申请个账号做测试.
总之,Java中的Cookie操作涉及了服务器与客户端之间的交互,理解其创建、读取、更新和删除的原理对于Web应用的开发至关重要。同时,注意处理好编码问题,以防止乱码现象的发生。通过以上介绍,你应该对Java操作...
- Cookie大小限制:每个Cookie的大小不能超过4KB,且浏览器对每个站点的Cookie数量也有限制。 - 隐私问题:因为Cookie存储在客户端,所以不应存储敏感信息,如密码明文。 8. **替代方案** 对于需要大量存储或...
JAVA 操作 COOKIE Cookie 是一种小型文本文件, Webseite 服务器通过 HTTP 头将其发送到浏览器端,浏览器将其存储在本地,下次访问同一网址时,浏览器将其发送回服务器端,以便服务器端识别用户身份、追踪用户行为...
总结来说,Java中的Cookie操作涉及创建、存储、读取和删除Cookie,通常与HTTP请求和响应交互。Apache HttpClient库提供了一套强大的工具,使得开发者可以方便地管理Cookie,从而实现会话管理。`...
Java 操作 COOKIE 主要涉及到对 HTTP 协议中的 Cookie 进行创建、读取、修改和删除等操作。Cookie 是一种服务器与客户端之间保持状态的机制,常用于用户登录状态的维持、个性化设置的存储等场景。以下是关于 Java ...
在Java Servlet中,我们主要通过`javax.servlet.http.Cookie`类来操作Cookie。以下是一个创建和添加Cookie到响应的示例: ```java // 创建一个Cookie对象 Cookie cookie = new Cookie("username", "JohnDoe"); // ...
提供的实现类可能包含了对Cookie操作的封装,如创建、读取、更新和删除的方法。测试类则用于验证这些功能的正确性,通常会使用JUnit或其他单元测试框架编写,通过模拟请求和响应来测试Cookie操作。 在提供的压缩包...
总之,Java中的Cookie操作涉及到创建、读取、更新和删除,以及跨域共享。理解这些基本操作对于开发Web应用程序至关重要,特别是涉及用户会话管理和个性化设置等功能时。正确地使用Cookie可以提升用户体验,同时要...
标题“Discuz与Java通过Cookie共享登录”涉及的是在Web开发中如何实现不同系统间用户登录状态的共享,特别是Discuz论坛系统与基于Java的应用之间的交互。Discuz是一款流行的开源社区论坛软件,而Java是一种广泛使用...
在JavaScript中,我们可以使用`match()`、`search()`或`test()`方法与正则表达式配合,实现对Cookie字符串的复杂操作。 在实际应用中,JS和Java Cookie结合使用可以实现更高级的功能。例如,服务器通过Java Cookie...
总的来说,这个项目涉及了Java网络编程、HTTP请求、登录处理、COOKIE管理、HTML解析以及数据库操作等多个方面,这些都是Java网络爬虫开发中常见的核心技术。通过实践和学习这些知识点,你可以构建出强大的爬虫系统,...
**JspUtil与Cookie操作** 在提供的文件名"JspUtil"中,我们可以推测这可能是一个Java类,包含了对JSP页面进行辅助操作的方法,包括处理Cookie的函数。在实际开发中,经常会编写这样的工具类来封装Cookie的操作,如...