javax.servlet.http.cookie类用户创建一个cookie,Response接口中也定义了一个addcookie方法(向服务器写东西都找到Response方法),用于在其响应头中增加一个响应的set-cookie头字段,同样,Request接口中也定义了一个getcookies方法(获取到的是一个数据,即所有的cookie),用于获取客户端提交的cookie,cookie类方法如下:
在创建了一个cookie之后,如果不用这个方法设置,那么cookie的生命周期就是浏览器进程
比如我们常用的论坛登录,记住密码一周,其实就是把服务器发送过来的cookie保存在了本地硬盘、
cookie应用:
记录上次访问时间:
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setCharacterEncoding("UTF-8"); response.setContentType("text/html;charset=UTF-8"); PrintWriter out = response.getWriter(); out.print("您上次访问时间是:"); //获得用户的时间cookie Cookie cookie[] = request.getCookies(); for(int i=0;cookie!=null &&i
其中setMaxAge是设置cookie有效期,不设置的话是会话级别的,即关掉浏览器就没有了
把值设置为0,表示清除该cookie。
例如上面的例子加一个按钮,表示清除上次访问时间。
删除cookie的时候path也需要一致
setPath是设置有效域,如果不设置,那么cookie只是在这个Servlet下有效,设置后,会在整个web下有效