Как работать с куками из сервлета?
Установка cookie
import javax.servlet.*;
import javax.servlet.http.*;
public class MyServlet extends HttpServlet
{
public void doPost(HttpServletRequest req, HttpServletResponse res)
{
res.addCookie(new Cookie("mycookie_name", "mycookie_value"));
}
public void doGet(HttpServletRequest req, HttpServletResponse res)
{
doPost(req, res);
}
}
Чтение cookie
import javax.servlet.*;
import javax.servlet.http.*;
public class MyServlet extends HttpServlet
{
public void doPost(HttpServletRequest req, HttpServletResponse res)
{
Cookie[] theCookies = request.getCookies();
if (cookie_jar != null)
{
java.io.PrintWriter out = res.getWriter();
for (int i =0; i< cookies.length; i++)
{
Cookie aCookie = theCookies[i];
out.println
("Name : " + aCookie.getName() + " Value: " + aCookie.getValue());
}
}
}
public void doGet(HttpServletRequest req, HttpServletResponse res)
{
doPost(req, res);
}
}
Удаление cookie
Здесь происходит установка времени жизни куки.
import javax.servlet.*;
import javax.servlet.http.*;
public class MyServlet extends HttpServlet
{
public void doPost(HttpServletRequest req, HttpServletResponse res)
{
Cookie cookie = new Cookie ("myCookie", "theCookieValue");
// Удалится через 5 минут (5 * 60)
cookie.setMaxTime( 300 );
// Удалится при выходе из браузера
// cookie.setMaxTime( -1 );
// Удалится прямо сейчас
// cookie.setMaxTime( 0 );
}
public void doGet(HttpServletRequest req, HttpServletResponse res)
{
doPost(req, res);
}
}