01_7_cookies
01_7_cookies
1. cookies
1.1服务器可以向客户端写内容
1.2只能是文本内容
1.3客户端可以阻止服务器写入
1.4只能拿到自己webapp写入的东西
1.5Cookie分为两种
属于窗口/子窗口(放在内存中)
属于文本(有生命周期的)
1.6一个servlet/jsp设置的cookies能够被同一个路径下面或者子路径下面的servlet/jsp读到(路径 = URL)(路径 != 真实文件路径)
2. 测试类
SetCookies.java
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
/*response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
out.println("<HTML>");
out.println(" <HEAD><TITLE>A Servlet</TITLE></HEAD>");
out.println(" <BODY>");
out.print(" This is ");
out.print(this.getClass());
out.println(", using the GET method");
out.println(" </BODY>");
out.println("</HTML>");
out.flush();
out.close();*/
for (int i = 0; i < 3; i++) {
Cookie cookie = new Cookie("Session-Cookie-" + i, "Cookie-Value-P" + 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=utf-8");
PrintWriter out = response.getWriter();
out.print("<H1>设置Cookie</H1>6个Cookie<a href=\"ShowCookies\">查看</a>");
}
ShowCookies.java
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html; charset=utf-8");
PrintWriter out = response.getWriter();
String title = "Active Cookies";
out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
out.println("<HTML>");
out.println(" <HEAD><TITLE>获取客户端Cookie</TITLE></HEAD>");
out.println(" <BODY>");
out.print("<H1 ALIGN=\"CENTER\">" + title +
"</H1><table border=1 ALIGN=\"CENTER\">" +
"<tr><th>Cookie Name</th><th>Cookie Value</th>");
Cookie[] cookies = request.getCookies();
if (cookies != null) {
Cookie cookie;
for (int i = 0; i < cookies.length; i++) {
cookie = cookies[i];
out.print("<tr><td>" + cookie.getName()+"</td><td>" + cookie.getValue() + "</td></tr>");
}
}
out.print("</table>");
out.println(" </BODY>");
out.println("</HTML>");
out.flush();
out.close();
}
01_7_cookies的更多相关文章
随机推荐
- hdu2612(dijkstra)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2612 题意:给出一个n*m的矩阵,' . ' 表示可以走的路, ' # '表示不能走的路 ,’ @'表 ...
- 2017-9-22 NOIP模拟赛[xxy][数论]
XXY 的 的 NOIP 模拟赛 4 4 —— 数学专场 A Description定义 f(x)表示 x 的约数和,例:f(12)=1+2+3+4+6+12=28给出 x,y,求Σf(i),i∈[x ...
- python爬虫——web前端基础(4)
CSS,指层叠样式表,用来定义如何显示HTML元素,一般和HTML配合使用. 在HTML中使用CSS样式的方法: 内联样式表:CSS代码直接写在现有的HTML标记中,直接使用style属性改变样式.例 ...
- 常用的js工具函数
JS选取DOM元素的方法注意:原生JS选取DOM元素比使用jQuery类库选取要快很多1.通过ID选取元素document.getElementById('myid');2.通过CLASS选取元素do ...
- JAVAFX-1 开发应用
为什么用javafx? 写这个专题的目的,其实也是好玩,原来的熟悉的使用swing 来开发java中的gui程序,其实早就知道有javafx 这个东西的,一致没有时间的玩,最近有时间所以学习.这个专题 ...
- python大战机器学习——聚类和EM算法
注:本文中涉及到的公式一律省略(公式不好敲出来),若想了解公式的具体实现,请参考原著. 1.基本概念 (1)聚类的思想: 将数据集划分为若干个不想交的子集(称为一个簇cluster),每个簇潜在地对应 ...
- 【手撸一个ORM】第一步、实体约定和描述
一.约定 数据实体必须实现 IEntity 接口,该接口定义了一个int类型的Id属性,既每个实体必须有一个名称为Id的自增主键. 若数据表的主键列名称不是Id,可以通过 [MyKey("主 ...
- String类、StringBuilder类、StringBuffer类
String类是不可变类,创建了一个String对象后,该String对象中的字符序列不能被改变. StringBuilder是字符序列可变的字符串类,提供了一系列修改字符串的方法. StringBu ...
- [Loading Component]Loading组件的v-model设计是否不合理?
vue在2.4.2版本中给computed里的属性加了限制,详见assigning to a computed property without setter does not fail 项目将vue ...
- SQL Server 2012安装配置(Part1 )
1 安装前准备 安装 SQL Server 2012 服务器及客户端前,需要提前做以下两项准备: SQL Server2012 依赖于.Net Framework 3.5.1 组件.Windows S ...