Cookie使用及应用-记住密码

转发 forward

  它是属于服务端跳转,地址栏不会发生改变。

Response

重定向 redirector

客户端跳转,地址栏发生了改变。

代码:

web.xml中添加

区别主要是带值问题:如果我们用Request传值,只能用forward;

什么场合下用:不带值。登陆:成功可以用forward,失败可以用重定向。重定向还可以是项目以外的资源。转发只能是当前项目。转发效率要高一些。

实际原理是什么:

重定向三次握手。

买房问题:

未婚证明:

银行贷款:带着身份证到银行贷款。银行说要未婚证明,你只能回去到民政局办理,办好没办好你是清楚的。再到银行办理。

如果是转发呢:银行帮你办理了未婚证明,你不用去民政局了,你不知道银行办没有办好。

三次握手:

客户端–发送带有SYN标志的数据包–一次握手–服务端

服务端–发送带有SYN/ACK标志的数据包–二次握手–客户端

客户端–发送带有带有ACK标志的数据包–三次握手–服务端

四次挥手:

客户端-发送一个FIN,用来关闭客户端到服务器的数据传送

服务器-收到这个FIN,它发回一个ACK,确认序号为收到的序号加1 。和SYN一样,一个FIN将占用一个序号

服务器-关闭与客户端的连接,发送一个FIN给客户端

客户端-发回ACK报文确认,并将确认序号设置为收到序号加1

一、Cookie(客户端技术)

1.chrom浏览器如何查看Cookie

2.firefox浏览器如何查看Cookie

3.IE浏览器如何查看Cookie

一个浏览器能保存多少个Cookie  300

一个网站能保存多少个Cookie   20

Cookie是什么?有什么用?

Cookie保存的时间

1.客户端技术

  是服务器将信息保存在客户端

  客户端第一次请求是没有Cookie

  请求后,服务器有可能放Cookie

  如果放了,那么客户端下次请求就携带它

2.作用

  追踪特定对象(浏览过的商品)

  统计网页浏览次数

  简化登陆:记住用户名

3.缺点

  可以看得到(怎么看)

  容易信息泄露(不安全)

 

4.chrome浏览器查看

 chrome://settings/

  拉到最下面“高级”

  打开出现“隐私设置和安全性”

  内容设置

 Cookie

  所有 Cookie 和网站数据

  清除Cookie


  5.如何用Java实现

  5.1创建一个web项目

  5.2创建一个Servlet

  5.3在配置文件中配置web.xml

  5.4创建一个Cookie

  5.5存到客户端

 response.addCookie(cookie);

代码:CookieServlet

web.xml中添加

前台index.jsp中添加

启动猫,访问:http://localhost:9999/web-6/index.jsp,点击超链接。查看浏览器的cookie。

问题:关了浏览器,cookie就被删除了

解决:保存到电脑的磁盘上,设置setMaxAge

再次请求,查看,关掉浏览器,发现cookie不会消失了。

5.6服务端取  request.getCookies()返回数组

    getName

    getValue

接下来我们如何获取Cookie。先写一个GetCookieServlet获取

web.xml中添加

index.jsp添加

观察控制台

 

5.7删除  setMaxAge(0) 案例中使用

课堂案例:1.记住用户名,记住勾选

1.      先登陆,登陆成功,保存用户名到cookie。并

2.登陆页面如果是jsp,不会拿cookie

 Servlet中会拿,登陆页先跳Servlet再转登陆页。

Servlet进login.jsp,所以是获不到任何jsp页面的值。

login.jsp

LoginServlet的逻辑,如果勾了就将勾了标识与用户名存入Cookie中,如果没有勾,就清除掉。

web.xml中添加

问题:如果我们从login.jsp登陆就无法用Request获得已经保存的Cookie,于是我们可以弄一个ToLoginServletl转到login.jsp,将Cookie中的值传过去。


login.jsp进行回显设置

导标签库



启动猫,进行测试:

输入数据

接下来打开另一个浏览器

地址栏上输入

当我们去掉勾,输入正确的密码,提交,再次进入,又取消了回显。

 

问题:如果想从index.jsp直接跳到tologin怎么办?

在index.jsp加上



猜你喜欢

转载自blog.csdn.net/mtm001/article/details/80887107
今日推荐