第二十七天:用户禁止cookie下的seesionId追踪以及过滤器

1.用户禁止cookie后也就是说我们还可利用session的URL重写机制来解决

1.1什么是url重写机制?

所谓的url重写指的是,可以通过修改url地址,在其后面添加sessionId,来实现sessionId的跟踪

1.2url重写需要注意的事项

即就是在访问某个需要session机制支持的组件时候,不要直接在浏览器地址栏输入地址,而是应该通过服务器来生成的url地址访问

1.3方法

Response.encoderURL(url);

response.encoderRedirectURL(url);

2.session机制的优缺点

优点:相对于cookie机制,安全,存放的数据可以是对象,存放的数据量更大

缺点:是所有的数据都存放在服务器端,服务器的压力比较大,一般会采用激活或者钝化的机制,将session当中的数据零时的保存到文件或者数据库中去。

3.过滤器

 3.1什么是过滤器

在servlet规范中定义的一种特殊类,可以拦截服务器调用servlet的过程

写一个java类实现Filter接口,重写doFileter()方法里,实现过滤的逻辑

web.xml中配置过滤器,FileterConfig.getInitParameter()读取,fileter的配置参数

3.2过滤器的优先级

在web.xml中,看<fileter-mapping>配置,按配置的先后顺序执行

3.3过滤器的优点

可以将一些通用的功能(比如,记录日志,权限控制,安全,编码等)写在过滤器当中,这样做的好处就是:编码量少,并且易于维护,比如要修改日志记录的方式,值需要修改一个过滤器的类就行了。

       代码的可插拔性:增加或者减少某个模块,不至于影响整个系统的稳定性。

3.4监听器

在servlet中规范定义的一个特殊类,用于监听容器产生的以下事件:

当容器创建或者销毁request,session,servletcontext的时候产生的对应事件。

当对requestsessionservletcontext调用setAttribute removeAttribute是产生的事件

servletContext,当服务器启动时候,会为每一个已经部署的应用,创建唯一的servletContext对象,该对象会一直存在,除非服务器关闭或者引用卸载。

它的作用就是存放一些全局可用的数据,或者web.xml中全局配置的参数。返回逻辑路径对应的物理路径

3.4.1如何实现监听事件,写一个类,依据要监听事件的类型,实现对应的接口,比如要监听session的创建和销毁,可以实现HttpSessionlistener接口

在接口中实现监听的逻辑,web.xml中,配置监听器






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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值