马士兵老师的~~

cookie是服务器将信息保存在客户端的一个表示方式 名-值

服务器只能写入文档文件

每个浏览器都有唯一的标识号 且每个浏览器只允许访问与自身相关的cookie的内容

cookie分为两种,一种为浏览器型,不设置生命周期或者设为-1时,cookie的存在与浏览器该页面是否存在相关,另一种为永久型,即设置了生命周期

定义一个cookie   setcookie  应利用response来设置  而获取cookie  应该使用 request来获取

页面对cookie的访问与页面间的“继承”关系有关。。。

代码

SetCookies.java、

import java.io.IOException;
import java.io.PrintWriter; import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; public class SetCookies extends HttpServlet { @Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
for(int i=0;i<3;i++)
{
Cookie cookie=new Cookie("Session-Cookie-"+i,"Cookie-Value-S"+i);
response.addCookie(cookie);
cookie=new Cookie("Persistent-Cookie-"+i,"Cookie-Value-P"+i);
cookie.setMaxAge(3600);
response.addCookie(cookie);
}
response.setContentType("text/html;charset=gb2312");
PrintWriter pw=response.getWriter();
pw.println("<html><head><title>设置Cookies</title></head><body bgcolor='#FDF5E6'>");
pw.println("<p>There are six Cookies associated with this page.To see them," +
" visit the <a href='ShowCookies'>ShowCookies servlet</a></p>");
pw.println("<p>Three of the cookies are associated only with the current session,while three are persistent." +
" Quit the browser,restart,ans return to the ShowCookies servlet to verify that the three long-lived ones persist across sessions;</p>");
pw.println("</body></html>"); } @Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request,response);
} }

ShowCookies.java

import java.io.IOException;
import java.io.PrintWriter; import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; public class ShowCookies extends HttpServlet { @Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
Cookie []cookies=request.getCookies();
response.setContentType("text/html;charset=gb2312");
PrintWriter pw=response.getWriter();
pw.println("<html><head><title>获取客户端Cookies</title></head><body bgcolor='#FDF5E6'>");
pw.println("<h1 align='center'>Active Cookies</h1><br/>");
pw.println("<table align='center' border=1 ><tr><td>Cookie Name</td><td>Cookie Value</td></tr>");
for(Cookie cookie:cookies)
{
pw.println("<tr><td>"+cookie.getName()+"</td><td>"+cookie.getValue()+"</td></tr>");
}
pw.println("</table></body></html>"); } @Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request,response);
} }

web.xml配置

 <servlet>
<servlet-name>SetCookies</servlet-name>
<servlet-class>SetCookies</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>SetCookies</servlet-name>
<url-pattern>/servlet/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>/servlet/ShowCookies</url-pattern>
</servlet-mapping>

页面

Cookie例子的更多相关文章

  1. idHTTP最简洁的修改和取得Cookie例子

    procedure TForm1.Button1Click(Sender: TObject); var HTTP: TidHTTP; html, s: string; i: integer; begi ...

  2. CEF3 获取Cookie例子 CefCookieManager C++

    首先从cef_cookie.h 源码种看到CefCookieManager 这个类: // Visit all cookies on the IO thread. The returned cooki ...

  3. 简述cookie

    1.Cookie的概述 * Cookie是客户端的技术(默认把Cookie保存在每个用户的浏览器上) * 程序把每个用户的数据以cookie的形式写给用户各自的浏览器 * 当用户使用浏览器再去访问服务 ...

  4. 用cookie记住用户名

    有时候,我们在做登陆框时会有个复选框选择请记住我,或者有时候会遇到一些弹出框说下次不再提醒,此功能我们可以用js中的cookie实现此功能 下面记录一下如何实现该功能: 利用cookie记录用户名 1 ...

  5. PHP的curl实现get,post 和 cookie(几个实例)

    类似于dreamhost这类主机服务商,是显示fopen的使用 的.使用php的curl可以实现支持FTP.FTPS.HTTP HTPPS SCP SFTP TFTP TELNET DICT FILE ...

  6. PHP的curl实现get,post 和 cookie

    类似于dreamhost这类主机服务商,是显示fopen的使用 的.使用php的curl可以实现支持FTP.FTPS.HTTP HTPPS SCP SFTP TFTP TELNET DICT FILE ...

  7. cookie知识点

    1.springmvc框架中,cookie例子 jsp: <%-- Created by IntelliJ IDEA. User: 44262 Date: 2019/2/28 Time: 18: ...

  8. 深入了解 Session 与 Cookie

    Java —— 深入了解 Session 与 Cookie Java web   了解Cookie和Session   定义 1.很通俗的来讲,Cookie就是浏览器的缓存,就是用户访问网站时保存在浏 ...

  9. PHP的curl实现get,post 和 cookie (转)

    类似于dreamhost这类主机服务商,是显示fopen的使用 的.使用php的curl可以实现支持FTP.FTPS.HTTP HTPPS SCP SFTP TFTP TELNET DICT FILE ...

随机推荐

  1. XMPP--- error : linker command failed with exit code 1

    error: linker command failed with exit code 1 (use -v to see invocation) 错误原因:libidn.a文件没添加上去 解决方法:l ...

  2. MD5加密解密

    方法一 首先,先简单介绍一下MD5 MD5的全称是message-digest algorithm 5(信息-摘要算法,在90年代初由mit laboratory for computer scien ...

  3. stl源代码剖析:编译器的提前定义位置集设置

    眼下我的工作环境还是win.全部演示也用VS或者cygwin这些环境作为基础. 1.配置项目的附加include目,添加提前定义位置集设置,编译器会把它添加include路径,比方在某个目录中定义一个 ...

  4. 学习OpenBlas

    编译 从OpenBlas Home Page 上下载源代码.make, make install 使用 level 1 向量-向量 操作 #include <iostream> #incl ...

  5. 案例分析:java中substring引发的Full gc

    问题定位 由于应用频繁地Full gc,就dump了内存下来用MAT分析,发现有个map占用了98%的内存,于是找到这个map private ConcurrentMap<String, Str ...

  6. 程序中使用事务来管理sql语句的执行,执行失败时,可以达到回滚的要求。

    1.设置使用事务的SQL执行语句 /// <summary> /// 使用有事务的SQL语句 /// </summary> /// <param name="s ...

  7. Python 操作Redis

    redis对比monoDB: redis和memcache 是key value非关系型数据库,mysql是关系型数据库,表的结构和保存的内容有严格的要求,关系型数据库无法保存临时数据或不标准的数据, ...

  8. Miller_Rabin、 Pollard_rho Template

    Multiply and pow Function: //计算 (a*b)%c. a,b都是ll的数,直接相乘可能溢出的 // a,b,c <2^63 ll mult_modq(ll a,ll ...

  9. python模块 mysql-python安装(在ubuntu系统下)

    直接运行如下命令 sudo pip install MySQL-python 报如下错误 xxx@ubuntu:~$ sudo pip install MySQL-python Downloading ...

  10. Android性能检测--traceview工具各个参数的意思

    Android性能检测 traceview的使用方法 1. 把android-sdk-windows\tools路径加到Path当中 2. 编写测试代码: package com.wwj.tracev ...