Tomcat+Servlet保存Cookie到浏览器

最后更新于:2022-04-01 07:14:16

# Tomcat+Servlet保存Cookie到浏览器 我们在访问一些大型购物网站的时候,都有添加到购物车这一项,而购物车里面的东西都是临时的,商品买完之后购物车里面的东西可能就没有价值了。如果把这些临时的东西都保存到服务器的话,无疑是一种资源浪费。因此今天我们就引入一个新名词Cookie,说是新名词其实一点也不陌生,我们电脑或者浏览器清理垃圾的时候都有轻触Cookie这一项。其实这就是我们访问一些网站的时候,开发者为了避免自己服务器压力,或者减少服务器的存储浪费,而把一些临时的与用户相关的文件或者信息保存到用户电脑上。 这样的技术是怎样实现的呢,这里我做了一个简单的实例,供大家参考。核心代码如下: ~~~ 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!"); } } ~~~ ~~~ 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()); } } } ~~~ 配置文件: ~~~ <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> ~~~ 运行效果: ![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-01-18_569c9b4c044c7.jpg) ![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/2016-01-18_569c9b4c2176a.jpg) 原理很简单,其实到具体应用用到cookie的地方特别多,因此我们还需要多多实践,多多应用,多读交流,有不足之处请大家批评指正。
';