04.23 过滤器和监听器 重写url

===================================================
cookie被禁用,session也无法生效
URL重写技术来完成会话状态的保存

url:统一资源定位符
uri:统一资源标识符

url第一次访问的时候获取到资源,接下来对url进行编码,再将url发送回客户端。下次访问的时候使用编码过后的url访问就能将会话状态保存起来

url编码:将session id放在url后面

cookie和url同时生效的情况下,优先使用cookie的数据

在这里插入图片描述

================================================

过滤器和监听器

(url路径认证 在线人数认证 )

过滤器

过滤器的基本概念

sql注入,页面上输入 where 1=1
特殊字符 敏感字符

url权限操作 :没有登录过不能访问服务器资源

请求和响应都要经过 过滤器

在servlet中,过滤器是非常重要的一项技术,web开发过滤器是通过filter来实现的,可以管理web服务器的所有子议案,对jsp、servlet或者静态html资源进行拦截,从而实现一些特殊的功能、敏感字符的过滤,url冯文权限控制、编码集的统一设置等

过滤器是如何是实现拦截的

工作流程见流程图

在javaweb中提供了一个Filter接口,编写一个类实现这个接口,当前类就是过滤器。过滤器也是运行在容器中,在到达目前资源之前进行拦截处理。处理完了再将请求交给目标资源。

服务器响应的时候依然要经过过滤器。(作用:可以对响应的结果进行处理)
过滤器默认是不会将请求转发给目标资源

=========
Tomcat和过滤器
1.启动Tomcat,加载自身的配置文件
2.加载webapps下面每个项目的web.xml
3.如果发现web.xml有配置富哦氯气,实例化过滤器对象
4.马上调用过滤器init方法来初始化过滤器
5.请求被Tomcat转交过滤器
6.容器销毁过滤器调用destory

请求发送过来经过过滤器
1、先执行一段代码处理内容
2、chain.doFilter将请求交给目标资源
3、目标资源处理完了响应又经过过滤器执行一段代码

使用get提交会产生乱码

chain。doFilter();
在这里插入图片描述

======================================
编码集 过滤器设置
在这里插入图片描述

============================================================

判断是否登录,没有登录必须要经过验证

getInitParameter()方法是在GenericServlet接口中新定义的一个方法,用来调用初始化在web.xml中存放的参量。在web.xml配置文件中一个servlet中参量的初始化是使用

在这里插入图片描述

在这里插入图片描述
getInitParameter方法中的参数名就是下图中对应的param-name中的值
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

=========================================
过滤器链
多个过滤器同时作用,称为过滤器链
多个过滤器嵌套在执行的,第一个完了,马上进入第二个。退出的时候,最后一个过滤器一直到第一个过滤器

过滤器链中第一个执行的过滤器肯定是web。xml 首先注册和映射的过滤器

过滤器的位置
内部派发

在这里插入图片描述
在这里插入图片描述

监听器

在这里插入图片描述
概念:
监听器就是一个普通的java程序实现了特定的接口,这个程序专门用于监控其他的java程序,属性的变更、状态的改变。当被监视的对象产生上述的行为,立即采取相应的行为(执行监听器的方法)

javaweb中学习的监听器
提供了三类监听器
Servlet:
Session:
servletContext:

javaweb中提供的监听器主要是用于监控servlet程序、session对象、以及servletContext对象。

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值