①cookie定义
cookie是存储在计算机上的文本文件,并保留了各种跟踪信息
②Cookie 常用方法
--public void setMaxAge(int expiry)
该方法设置 cookie 过期的时间(以秒为单位)。如果不这样设置,cookie 只会在当前 session 会话中持续有效。 |
--public String getName()
该方法返回 cookie 的名称。名称在创建后不能改变。 |
--public void setValue(String newValue)
该方法设置与 cookie 关联的值。 |
--public String getValue()
该方法获取与 cookie 关联的值。 |
③实例
@WebServlet("/setCookie")
public class SetCookie extends HttpServlet {
@Override
public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException{
//设值cookie
Cookie name = new Cookie("name",URLEncoding.encode(req.getParameter("name"),"UTF-8"));
Cookie url = new Cookie("url",URLEncoding.encode(req,getParameter("url"),"UTF-8"));
//设值过期时间 24小时后
name.setMaxAge(60*60*60);
url.setMaxAge(60*60*60);
//在响应头添加cookie
resp.addCookie(name);
resp.addCookie(url);
//设值响应头内容
resp.setContentType("text/html;charset=UTF-8");
PrinterWriter out = resp.getWriter();
out.println("set cookie");
out.println("<h1>" + req.getParameter("name")+ "</h1>");
out.println("<h1>" + req.getParamter("url") + "</h1>");
}
@Override
publc void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException{
doGet(req,resp);
}
}
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>setCookie</title>
</head>
<body>
<form action="/setCookie" method="POST">
站点名 :<input type="text" name="name">
<br/>
站点 URL:<input type="text" name="url"/><br>
<input type="submit" value="提交"/>
</form>
</body>
</html>