Home >Java >javaTutorial >Java cookie operation example (delete cookie)

Java cookie operation example (delete cookie)

高洛峰
高洛峰Original
2017-01-18 14:04:461588browse

1. Set Cookie 

Cookie cookie = new Cookie("key", "value");
cookie.setMaxAge(60);

Set the 60-second lifetime. If set to a negative value, it will be a browser process cookie (saved in memory), which will become invalid when the browser is closed.

cookie.setPath("/test/test2");

Set the Cookie path. If not set, it will be the current path (for Servlet, it is request.getContextPath() + the url-pattern path part of the Servlet configured in web.xml)

response.addCookie(cookie);

2. Read Cookie

This method can read all Cookie objects of the current path and the "direct parent path". If there is no cookie, it will return null

Cookie[] cookies = request.getCookies();

3. Delete Cookie

Cookie cookie = new Cookie("key", null);
cookie.setMaxAge(0);

Set to 0 to delete the cookie immediately

cookie.setPath("/test/test2");

Delete the cookie on the specified path. If the path is not set, the default is to delete the current path Cookie

response.addCookie(cookie);

4. Note : Assume that the path structure is as follows

test/test2/test345/test555/test666

a. Cookies with the same key name (the values ​​can be the same or different) can exist in different paths.

b. When deleting, if there is no cookie with the key "key" under the current path, all parent paths will be queried, and the deletion operation will be performed upon retrieval (only one parent path Cookie closest to itself can be deleted at a time )

FF. You must specify the same path used to set the cookie to delete the cookie, and the path must be specified for the cookie key name regardless of uppercase, lowercase, or mixed sizes.

IE. When the key name is in lowercase, if the current path is /test/test2, if it cannot be found, then query /test, /test555, /test345, and if it is still not found, query /. (/test555/test666 is not queried)

When the key name is in mixed case or uppercase, if the path is not specified, the current path will be deleted by default and no upward query will be performed.

c. When reading Cookie, only the Cookie of the direct parent path can be read.

If the current path is /test/test2, the key to be read is "key". After the current path is read, /test must be read, and after /test is read, /

d must be read. When doing Java web projects, due to the general web server (such as Tomcat or Jetty ) all use Context to manage different WebApplications, so that each Context has a different Path.

Be especially careful when there are multiple WebApplications in a Server. Do not set a cookie with a Path of /, which is easy to cause misoperation. . (Of course, the premise is that the domain name is the same)

For more java operation cookie examples (deleting cookies) related articles, please pay attention to the PHP Chinese website!


Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn