- 1、本文档共13页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
.
.
『黑马程序员』JavaEE 就业班同步笔记第一阶段: JavaWeb 之核心技术--Cookie 与 Session
案例一:记录用户的上次登陆访问时间.
需求:
用户登录完成后,显示您是第 x 位访问的用户,您的上次访问时间是:yyyy-MM-dd.
如果第一次访问的话,只显示您是第 x 位用户.
如果不是第一次访问的话,显示您是第 x 位访问的用户,您的上次访问时间是:yyyy-MM-dd.
分析:
技术分析:
【会话技术】
什么是会话:用户翻开一个浏览器访问页面,访问网站的很多页面,访问完成后将浏览器关闭的过程称为是一次会话.
常见的会话技术:
Cookie :将数据保存到客户端浏览器.
Session :将数据保存到效劳器端.
为什么使用会话技术?
私有的数据,购物信息数据保存在会话技术中. 参见图一和图二
使用会话技术:
【Cookie 技术的使用】
向浏览器保存数据:
ServletResponse 有一个方法:
void addCookie(Cookie cookie);
获得浏览器带过来的 Cookie:
ServletRequest 有一个方法:
Cookie[] getCookies();
创立一个 Cookie 对象:
Cookie(String name,String value);
【JSP 的简单概述】
什么是 JSP :Java Server Pages(Java 效劳器端页面).JSP
= Java 代码 + HTML 的元素 + JSP 内置东西
SUN 公司为什么推出 JSP 动态网页开发技术:
SUN 公司推出的 Servlet 技术进行动态网页开发.发现 Servlet 自身有缺乏没有方法与 ASP,PHP 技术竞争.想在动态网页中输出表单.在 Servlet 中获得PrintWriter out = response.getWriter();
out.println(“form action=’’ method=’’〞);
out.println(“/form〞);
SUN 又推出了动态的网页开发技术就是 JSP.
JSP 的执行过程:
JSP 会被翻译成 Servlet,编译成 class 进行执行的.
JSP 的嵌入 Java 代码:JSP 的脚本元素
%! %:翻译成类中的成员局部. 定义变量,定义方法,定义类.Servlet 是线程不平安的,尽量少在类中定义成员属性!!
% %:翻译成类的service 方法内部的内容. 定义变量,定义类,直接写代码块.
%= %:翻译成 service 方法内部的 out.print();
步骤分析:
【步骤一】:准备登陆的案例.
【步骤二】:在统计人数的 Servlet 中.判断是否是第一次访问.
【步骤三】:根据是否是第一次显示不同的信息,同时将当前的时候保存到Cookie 中.
代码实现
[AppleScript] 纯文本查看 复制代码
?
public class CountServlet extends Servlet {
private static final long serialVersionUID = 1L;
0 protected void doGet( ServletRequest request, 2 ServletResponse response) throws ServletException, IOException {
0 response.setContentType(text/html; 3 charset=UTF-8);
0 Integer count = (Integer)
4 this.getServletContext().getAttribute(count);
0 // response.getWriter().println(h1
5 现在网站被访问的次数为:+count+/h1);
0
6 /**
0 * 获得浏览器中带过来的所有的
7 Cookie 信息,从数组中查找有没有指定名称的 Cookie
0 * 判断用户是否是第一次访问:(从数
8 组中没有找到指定名称的 Cookie)
0 * * 如果是第一次:显示欢送,记录当前
9 访问的时间存入到 Cookie 中.
1 * * 如果不是第一次:显示欢送,上一次
访问时间,同时记录当前访问的时间存入到 Cookie 中。
1 */
// 获得浏览器带过来的所有的 Cookie:
Cookie[] cookies =
request.getCookies();
1 // 从数组中查找指定名称的 Cookie:
3 Cookie cookie =
1 CookieUtils.findCookie(cookies, lastVisi
您可能关注的文档
- Altium Designer 复习资料(含答案).pdf
- (完整word版)基于LabVIEW三路抢答器.docx
- 《Altium designer》期末考试试卷(上机).docx
- 《电工电子学》试卷及答案.docx
- 《企业数字化转型的难点和解决方案》.docx
- 2020-2021学年高一英语牛津译林版必修第三册Unit3单元复习教案含答案.docx
- 2021年大学物理实验示波器实验报告示波器实验数据.docx
- 2022南京公需课答案构建绿水青山转化为金山银山的政策制度体系——《关于建立健全生态产品的意见》解读.docx
- 2022年2023年生态环境保护和建设三年行动方案.docx
- 2022年杭州年会策划3篇.docx
文档评论(0)