Servlet中的Cookie用法详解

Cookie是一小段信息, 可在多个客户端请求之间保留。
Cookie具有名称, 单个值和可选属性, 例如注释, 路径和域限定符, 最长期限和版本号。
Cookie如何运作
默认情况下, 每个请求都被视为一个新请求。在cookie技术中, 我们通过来自servlet的响应添加cookie。因此, cookie存储在浏览器的缓存中。之后, 如果用户发送了请求, 则默认情况下会在请求中添加cookie。因此, 我们将用户识别为旧用户。

Servlet中的Cookie用法详解

文章图片
index.html
< form action="servlet1" method="post"> Name:< input type="text" name="userName"/> < br/> < input type="submit" value="http://www.srcmini.com/go"/> < /form>

FirstServlet.java
import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class FirstServlet extends HttpServlet {public void doPost(HttpServletRequest request, HttpServletResponse response){ try{ response.setContentType("text/html"); PrintWriter out = response.getWriter(); String n=request.getParameter("userName"); out.print("Welcome "+n); Cookie ck=new Cookie("uname", n); //creating cookie object response.addCookie(ck); //adding cookie in the response //creating submit button out.print("< form action='servlet2'> "); out.print("< input type='submit' value='http://www.srcmini.com/go'> "); out.print("< /form> "); out.close(); }catch(Exception e){System.out.println(e); } } }

SecondServlet.java
import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class SecondServlet extends HttpServlet {public void doPost(HttpServletRequest request, HttpServletResponse response){ try{ response.setContentType("text/html"); PrintWriter out = response.getWriter(); Cookie ck[]=request.getCookies(); out.print("Hello "+ck[0].getValue()); out.close(); }catch(Exception e){System.out.println(e); } } }

web.xml
< web-app> < servlet> < servlet-name> s1< /servlet-name> < servlet-class> FirstServlet< /servlet-class> < /servlet> < servlet-mapping> < servlet-name> s1< /servlet-name> < url-pattern> /servlet1< /url-pattern> < /servlet-mapping> < servlet> < servlet-name> s2< /servlet-name> < servlet-class> SecondServlet< /servlet-class> < /servlet> < servlet-mapping> < servlet-name> s2< /servlet-name> < url-pattern> /servlet2< /url-pattern> < /servlet-mapping> < /web-app>

下载此示例(使用Myeclipse IDE开发)
【Servlet中的Cookie用法详解】下载此示例(使用Eclipse IDE开发)
下载此示例(使用Netbeans IDE开发)
输出
Servlet中的Cookie用法详解

文章图片
Servlet中的Cookie用法详解

文章图片
Servlet中的Cookie用法详解

文章图片

    推荐阅读