Tomcat+Servlet保存Cookie到瀏覽器


  我們在訪問一些大型購物網站的時候,都有添加到購物車這一項,而購物車里面的東西都是臨時的,商品買完之后購物車里面的東西可能就沒有價值了。如果把這些臨時的東西都保存到服務器的話,無疑是一種資源浪費。因此今天我們就引入一個新名詞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的地方特別多,因此我們還需要多多實踐,多多應用,多讀交流,有不足之處請大家批評指正。


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com