Tomcat+Servlet保存Cookie到浏览器

x33g5p2x  于2021-03-13 发布在 其他  
字(1.6k)|赞(0)|评价(0)|浏览(467)

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

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

  1. import java.io.*;
  2. import javax.servlet.*;
  3. import javax.servlet.http.*;
  4. public class SetCookies extends HttpServlet{
  5. public void doGet(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException{
  6. Cookie c1=new Cookie("password","123");
  7. response.addCookie(c1);
  8. response.getWriter().println("add cookie success!");
  9. }
  10. }
  1. import java.io.*;
  2. import javax.servlet.*;
  3. import javax.servlet.http.*;
  4. public class ShowCookies extends HttpServlet{
  5. public void doGet(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException{
  6. Cookie[] Cookies=request.getCookies();
  7. for(int i=0;i<Cookies.length;i++){
  8. Cookie c=Cookies[i];
  9. response.getWriter().println(c.getName()+","+c.getValue());
  10. }
  11. }
  12. }

配置文件:

  1. <servlet>
  2. <servlet-name>SetCookies</servlet-name>
  3. <servlet-class>SetCookies</servlet-class>
  4. </servlet>
  5. <servlet-mapping>
  6. <servlet-name>SetCookies</servlet-name>
  7. <url-pattern>/SetCookies</url-pattern>
  8. </servlet-mapping>
  9. <servlet>
  10. <servlet-name>ShowCookies</servlet-name>
  11. <servlet-class>ShowCookies</servlet-class>
  12. </servlet>
  13. <servlet-mapping>
  14. <servlet-name>ShowCookies</servlet-name>
  15. <url-pattern>/ShowCookies</url-pattern>
  16. </servlet-mapping>

运行效果:

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

相关文章