java 操作cookie
2016-07-28 08:33
344 查看
添加Cookie:
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 1.创建Cookie对象
Cookie cookie1 = new Cookie("webname", "XCoder Studio");
// 2.配置Cookie对象
cookie1.setComment("Web Host Name"); // Cookie描述
cookie1.setMaxAge(24*60*60); // Cookie有效时间
//cookie1.setPath("/"); // Cookie有效路径
// 3.通过response对象将Cookie写入浏览器,当然需要解决中文乱码问题,否则会抛出异常
// java.lang.IllegalArgumentException: Control character in cookie value, consider BASE64 encoding your value
response.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
response.addCookie(cookie1);
// 跳转到首页
response.sendRedirect("./index.jsp");
}
读取Cookie:
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 读取Cookie,通过request请求读取Cookie
Cookie[] cookies = request.getCookies();
// 判断是否存在Cookie,不存在跳转到首页
if (cookies == null) {
response.sendRedirect("./index.jsp");
return;
}
// 处理输出中文乱码问题
response.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
// 获取输出对象
PrintWriter out = response.getWriter();
// 迭代处理客户端发送来的Cookie对象
out.println("---------------------------------------------------------<br />");
for (Cookie cookie:cookies) {
out.println("Cookie名 称:"+cookie.getName()+"<br />");
out.println("Cookie储 值:"+cookie.getValue()+"<br />");
out.println("Cookie备 注:"+cookie.getComment()+"<br />");
out.println("Cookie有效时间:"+cookie.getMaxAge()+"<br />");
out.println("Cookie有效路径:"+cookie.getPath()+"<br />");
out.println("Cookie有效域名:"+cookie.getDomain()+"<br />");
out.println("<a href=\"./CookieDel?name="+cookie.getName()+"\">删除Cookie</a><br />");
out.println("---------------------------------------------------------<br />");
}
}
删除Cookie:
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 获取GET传递参数名称
String delName = request.getParameter("name");
if (delName == null) {
response.sendRedirect("./CookieRead");
return;
}
// 获取Cookies数组
Cookie[] cookies = request.getCookies();
// 迭代查找并清除Cookie
for (Cookie cookie: cookies) {
if (delName.equals(cookie.getName())) {
cookie.setMaxAge(0);
response.addCookie(cookie);
}
}
response.setHeader("refresh", "3;./CookieRead");
PrintWriter out = response.getWriter();
out.println("Will go back after 3 seconds...");
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 1.创建Cookie对象
Cookie cookie1 = new Cookie("webname", "XCoder Studio");
// 2.配置Cookie对象
cookie1.setComment("Web Host Name"); // Cookie描述
cookie1.setMaxAge(24*60*60); // Cookie有效时间
//cookie1.setPath("/"); // Cookie有效路径
// 3.通过response对象将Cookie写入浏览器,当然需要解决中文乱码问题,否则会抛出异常
// java.lang.IllegalArgumentException: Control character in cookie value, consider BASE64 encoding your value
response.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
response.addCookie(cookie1);
// 跳转到首页
response.sendRedirect("./index.jsp");
}
读取Cookie:
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 读取Cookie,通过request请求读取Cookie
Cookie[] cookies = request.getCookies();
// 判断是否存在Cookie,不存在跳转到首页
if (cookies == null) {
response.sendRedirect("./index.jsp");
return;
}
// 处理输出中文乱码问题
response.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
// 获取输出对象
PrintWriter out = response.getWriter();
// 迭代处理客户端发送来的Cookie对象
out.println("---------------------------------------------------------<br />");
for (Cookie cookie:cookies) {
out.println("Cookie名 称:"+cookie.getName()+"<br />");
out.println("Cookie储 值:"+cookie.getValue()+"<br />");
out.println("Cookie备 注:"+cookie.getComment()+"<br />");
out.println("Cookie有效时间:"+cookie.getMaxAge()+"<br />");
out.println("Cookie有效路径:"+cookie.getPath()+"<br />");
out.println("Cookie有效域名:"+cookie.getDomain()+"<br />");
out.println("<a href=\"./CookieDel?name="+cookie.getName()+"\">删除Cookie</a><br />");
out.println("---------------------------------------------------------<br />");
}
}
删除Cookie:
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 获取GET传递参数名称
String delName = request.getParameter("name");
if (delName == null) {
response.sendRedirect("./CookieRead");
return;
}
// 获取Cookies数组
Cookie[] cookies = request.getCookies();
// 迭代查找并清除Cookie
for (Cookie cookie: cookies) {
if (delName.equals(cookie.getName())) {
cookie.setMaxAge(0);
response.addCookie(cookie);
}
}
response.setHeader("refresh", "3;./CookieRead");
PrintWriter out = response.getWriter();
out.println("Will go back after 3 seconds...");
}
相关文章推荐
- java对世界各个时区(TimeZone)的通用转换处理方法(转载)
- java-注解annotation
- java-模拟tomcat服务器
- java-用HttpURLConnection发送Http请求.
- java-WEB中的监听器Lisener
- Android IPC进程间通讯机制
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- GUI - Web前端开发框架
- 介绍一款信息管理系统的开源框架---jeecg
- Extjs4.0 最新最全视频教程
- 聚类算法之kmeans算法java版本
- java实现 PageRank算法
- PropertyChangeListener简单理解
- c++11 + SDL2 + ffmpeg +OpenAL + java = Android播放器