# 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>
~~~
運行效果:


原理很簡單,其實到具體應用用到cookie的地方特別多,因此我們還需要多多實踐,多多應用,多讀交流,有不足之處請大家批評指正。