Servlet基础2


4.9

ServletContext

servlet上下文
一个项目一个ServletContext 代表当前web应用
作用:1.共享数据
   2.获取初始化参数
   3.请求转发
   4.读取资源文件(文件流+context)

HttpServletResopnse

应用:

  • 向浏览器输出消息
  • 下载文件
  • 解决中文乱码
    UrlEncoder.encode();
  • 验证码功能
  • 实现重定向
    resp.SendRedirect方法,相当于封装了需要跳转的地址setHeader和状态码setStatus
4.10

HttpServletRequest

用处:

  • 获得前端传递的参数
    getParameter和getParameterVaules后者可以得到多个参数,可以用在复选框的数据传递上
  • 请求转发
    req.getRequsetDispatcher().forward(req,resp);
    参数是需要跳转的指定地址
4.11

Cookie小饼干:客户端技术

会话:打开浏览器访问一个地址,到关闭浏览器的过程是一个会话
实现过程:浏览器访问到服务器,服务器判断浏览器之前是否登录过(客户端有没有携带cookie发出请求),如果有,表示之前登录过,如果没有,就给客户端发送一个cookie,可以保存登录状态

  • 一个cookie只能保存一个信息
  • 一个web站点最多给浏览器发送20个cookie
  • 浏览器有300个cookie的存储上限
  • 一个cookie最大只能为4kb
  • cookie的键不同,所以new键相同的cookie时,会将之前的value替换掉
    具体原理:
    Object[] errArgs = new Object[1];
    errArgs[0] = name;
    newcookie的时候在构造方法里有这行代码

删除cookie的方式:

  • 关闭浏览器cookie自动删除
  • 设置cookie有效期 0为立即失效

编码解码问题:防止中文乱码

  • URLEncoder.encode 编码
  • URLDecoder.decode 解码
4.12

Session:服务器技术

一个用户(浏览器)一个session对象
当有用户访问的时候,Web服务器自动创建一个Session对象,不用我们自己创建
使用场景:

  • 保存登录信息
  • 实现购物车功能
  • 整个网站中经常使用的数据

Session实际是用Cooike实现的,返回浏览器一个Cooike,键叫做jSeiionCooike,值是SessionId,这样服务器可以根据SessionId判断到底是哪个对象登录了
在Web.xml文件中可设置会话过期时间

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值