javaweb学习总结

重定向
在这里插入图片描述
请求转发
在这里插入图片描述
区别:重定向后浏览器地址值会发生改变。
重定向request域对象不能共享数据,因为request域的范围是一次请求一次响应。而转发能够共享数据
请求转发的路径写法,只是需要写url-pattern的地址即可,不用带项目名,因为是在内部操作,属于服务器端的写法
重定向是属于客服端的路径,客户端要再次向服务器端发起请求,如果路径不对将无法请求到。
请求转发只能跳转站内资源,不能跳转站外资源
重定向可以跳转站外资源也可以跳转到站内资源
什么情况下必须用转发?什么情况下必须用重定向?
想要在request对象共享数据时必须用转发,如果想要跳转站外资源必须用重定向

什么是会话以及什么是HTTP无状态会话?
从打开一个浏览器访问某个站点,到关闭这个浏览器的整个过程,成为一次会话会话技术就是记录这次会话中客户端的状态与数据的。http是无状态协议,无状态协议的意思就是每次请求都是独立的,相互之间没有关系

会话技术中的数据存在哪里的
当采用cookie技术时数据存放在客户端,当采用session技术时放在服务器端
request和ServeltContext为什么不适合做购物车?
因为从request域对象中取出购买的商品信息,取不出来,因为request的范围是一次请求一次响应,用ServletContext来购买商品会在结算时出现A客户把B客户买的商品一起结算了
Cookie和Session的区别以及原理?
区别:Cookie将数据存储在客户端本地,减少服务器的压力,但是安全性不好,因为能被客户端清楚,Session是将数据存储在服务器端,安全性相对来说比Cookie好,但是增加了服务器的压力
原理:客户端向服务器端发送请求,会创建一个Cookie,然后服务器在将Cookie写回客户端,并且保存在本地。
Session:Session技术是将数据存储在服务器端的技术,会为每个客户端都创建一块内存空间 存储客户的数据,但客户端需要每次都携带一个标识ID去服务器中寻找属于自己的内存空间。并且Session的实现是基于Cookie,Session需要借助于Cookie存储客 户的唯一性标识JSESSIONID
Cookie和Session怎么保存会话中的数据,图解加文字说明
在这里插入图片描述
在这里插入图片描述
在客户端向服务器端发起请求后,第一次时没有cookie的,然后会创建一个cookie的id,在将请求数据封装在cookie中写回客户端,客户端在接受到cookie后会将cookie保存在本地浏览器上
Session是在服务端开辟一个内存空间存储数据,当客户端向服务器端发起请求后,服务器里的资源会带着session编码JSESSION去找到对应的内存空间,取出里面的数据。而且每次客户端都携带一个标识ID去服务器中寻找属于自己的内存空间。

浏览器禁用Cookie后怎么解决?详细方案
当浏览器禁用cookie后,可以用URL重写,把每一个用户可能点的每一个超链接后面,都跟上sessionID,response.encodeRedirectURL(String path)来对重定向后的url地址进url重写,response.encodeURL(String path)来对表单的action或超连接进行url重写.

怎么销毁Cookie?代码体现
Cookie cookie = new Cookie(“name”,””);
cookie.setPath(“/web1”);
cookie .setMaxAge(0);
Resp.addCookie(cookie);

怎么销毁session?代码体现
session.invalidate();
session.setMaxInactiveInterval(600);

浏览器关闭后session是否销毁?Cookie是否销毁?
浏览器关闭后session不会立即销毁,因为session默认30分钟销毁,也可以自定时间销毁。Cookie不会销毁,只有当在浏览器清除时才会销毁

刷新验证码的代码?并掌握刷新验证码思想?
Cookie和Session实现购物的代码写出来,代码加上注释说明思路
Cookie的setPath方法和setMaxAge()作用,代码体现
cookie.setPath(“/web1”);
cookie .setMaxAge(0);

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值