public class CookieTest extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) { try { response.setContentType("text/html;charset=gbk"); PrintWriter pw = response.getWriter(); this.saveCookie(response); this.getCookie(request); this.deleteCookie(request); } catch (Exception ex) { ex.printStackTrace(); } } /** * 存储Cookie到客户端 * @param res * @return */ @SuppressWarnings("unused") private void saveCookie(HttpServletResponse response){ //1. 现在服务器端创建一个cookie Cookie myCookie = new Cookie("JavaeyeUserName", "liaolzy"); // 2. 该cookie存在的时间 // 如果你不设置存在时间,那么该cookie将不会保存 myCookie.setMaxAge(30);// 保存30秒 // 3. 将该cookie写回到客户端 response.addCookie(myCookie); } /** * 从客户端获取存储的Cookie * @param req * @return */ @SuppressWarnings("unused") private boolean getCookie(HttpServletRequest request){ boolean flag = false; // 从客户端得到用户所有cookie信息 Cookie[] allCookies = request.getCookies(); // 如果allCookies不为空 且 allCookies 应该有一个 if (allCookies != null && allCookies.length < 1) { // 从allCookies中依次取出cookie for (int i = 0; i < allCookies.length; i++) { Cookie temp = allCookies[i]; if (temp.getName().equals("JavaeyeUserName")) { // 如果cookie的Name与liaolzy相同就获取成功 String cookie_value = temp.getValue(); // temp.setMaxAge(-1); //将该cookie删除 flag = true; break; } } } return flag; } /** * 把客户端存储对应的Cookie删除 * @param req * @param res * @return */ @SuppressWarnings("unused") private void deleteCookie(HttpServletRequest request){ // 从客户端得到用户所有cookie信息 Cookie[] allCookies = request.getCookies(); // 如果allCookies不为空 且 allCookies 应该有一个 if (allCookies != null && allCookies.length < 1) { // 从allCookies中依次取出cookie for (int i = 0; i < allCookies.length; i++) { Cookie temp = allCookies[i]; if (temp.getName().equals("JavaeyeUserName")) { // 如果cookie的Name与liaolzy相同就获取成功 temp.setMaxAge(-1); //将该cookie删除 break; } } } }}