Tomcat+Servlet保存Cookie到浏览器

  1. 云栖社区>
  2. 博客>
  3. 正文

Tomcat+Servlet保存Cookie到浏览器

邵鸿鑫 2015-09-16 09:28:46 浏览529
展开阅读全文

  我们在访问一些大型购物网站的时候,都有添加到购物车这一项,而购物车里面的东西都是临时的,商品买完之后购物车里面的东西可能就没有价值了。如果把这些临时的东西都保存到服务器的话,无疑是一种资源浪费。因此今天我们就引入一个新名词Cookie,说是新名词其实一点也不陌生,我们电脑或者浏览器清理垃圾的时候都有轻触Cookie这一项。其实这就是我们访问一些网站的时候,开发者为了避免自己服务器压力,或者减少服务器的存储浪费,而把一些临时的与用户相关的文件或者信息保存到用户电脑上。

  这样的技术是怎样实现的呢,这里我做了一个简单的实例,供大家参考。核心代码如下:

<span style="font-family:KaiTi_GB2312;font-size:18px;color:#333333;background-color: rgb(255, 255, 255);">import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class SetCookies extends HttpServlet{
	public void doGet(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException{
		Cookie c1=new Cookie("password","123");
		response.addCookie(c1);
		response.getWriter().println("add cookie success!");
	}
}</span>

<span style="font-family:KaiTi_GB2312;font-size:18px;color:#333333;background-color: rgb(255, 255, 255);">import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class ShowCookies extends HttpServlet{
	public void doGet(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException{
		Cookie[] Cookies=request.getCookies();
		for(int i=0;i<Cookies.length;i++){
			Cookie c=Cookies[i];
			response.getWriter().println(c.getName()+","+c.getValue());
		}
		
	}
}</span>
配置文件:

<span style="font-family:KaiTi_GB2312;font-size:18px;color:#333333;background-color: rgb(255, 255, 255);">   <servlet>
	<servlet-name>SetCookies</servlet-name>
	<servlet-class>SetCookies</servlet-class>
  </servlet>
  <servlet-mapping>
	<servlet-name>SetCookies</servlet-name>
	<url-pattern>/SetCookies</url-pattern>
  </servlet-mapping>
  
     <servlet>
	<servlet-name>ShowCookies</servlet-name>
	<servlet-class>ShowCookies</servlet-class>
  </servlet>
  <servlet-mapping>
	<servlet-name>ShowCookies</servlet-name>
	<url-pattern>/ShowCookies</url-pattern>
  </servlet-mapping></span>

运行效果:

  原理很简单,其实到具体应用用到cookie的地方特别多,因此我们还需要多多实践,多多应用,多读交流,有不足之处请大家批评指正。

网友评论

登录后评论
0/500
评论
邵鸿鑫
+ 关注