在Servlet中使用Cookie
阿新 • • 發佈:2018-11-30
import javax.servlet.http.Cookie; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.catalina.util.URLEncoder; public class CookieToBrowserServlet extends HttpServlet { private static final long serialVersionUID = 1L; @Override public void doGet(HttpServletRequest request, HttpServletResponse response) { Cookie cookie1 = new Cookie("name1", "value1"); cookie1.setMaxAge(1000); Cookie cookie2 = new Cookie("name2", new URLEncoder().encode("你好", "UTF-8")); cookie2.setMaxAge(1000); response.addCookie(cookie1); response.addCookie(cookie2); } } //////////////////////// import javax.servlet.http.Cookie; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class CookieFromBrowserServlet extends HttpServlet { private static final long serialVersionUID = 1L; @Override public void doGet(HttpServletRequest request, HttpServletResponse response) { Cookie[] cookies = request.getCookies(); for (Cookie cookie : cookies) { System.out.println(cookie.getName() + ":" + cookie.getValue()); } } }
注意,瀏覽器對Cookie的支援都是有限的。首先一個域名只能支援幾十個鍵值對。儲存空間也有限制,一般是幾千個位元組。