Cookie机制:如果服务器需要记录该用户的状态,就使用response向客户端浏览器颁发一个Cookis。客户端浏览器会把Cookie保存起来。当浏览器请求该网站事,浏览器把请求的网址联通Cookie一同提交给服务器。服务器检查Cookie,一次来辨认用户状态。服务器还可以根据需要修改Cookie的内容。
Java中把Cookie封装成了javax.servlet.http.Cookie类。每个Cookie都是该Cookie类的对象。服务器通过操作Cookie类对象对客户端Cookie进行操作。通过request.getCookie()获取客户端提交的所有Cookie(以Cookie[]数组形式返回),通过response.addCookie(Cookiecookie)向客户端设置Cookie。
Cookie对象使用key-value属性对的形式保存用户状态,一个Cookie对象保存一个属性对,一个request或者response同时使用多个Cookie。
Cookie的有效期:maxAge决定Cookie的有效期,Cookie中通过getMaxAge()方法与setMaxAge(int maxAge)方法来读写maxAge属性。
Cookie cookie = new Cookie("username","helloweenvsfei"); // 新建Cookie
cookie.setMaxAge(Integer.MAX_VALUE); // 设置生命周期为MAX_VALUE
response.addCookie(cookie); // 输出到客户端