监听器,拦截器,过滤器的用法,作用,区别

本文介绍了监听器、拦截器和过滤器在Web开发中的作用和用法。监听器主要用于监听应用程序环境、会话和请求事件,如统计在线人数、系统初始化和属性修改。拦截器基于AOP,常用于业务逻辑判断和过滤字符编码,不依赖于servlet容器。过滤器则依赖于servlet容器,主要过滤请求和响应信息。此外,还讨论了char型变量存储中文字符的能力。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

监听器的作用与用法?

作用:

servlet规范中定义的一种特殊类

1、用于监听servletcontext(用于监听应用程序环境对象,用途:定时器、全局属性对象

),httpsession(监听用户会话,用途:统计在线人数、记录访问日志),servletRequest(监听请求消息,用途:读取参数、记录访问历史)等域对象的创建与销毁事件

2、用于监听域对象的属性发生修改的事件,比如域对象中的属性的增加和删除,绑定到HttpSession域中的某个对象的状态

用法:

1,统计在线人数和在线用户,也是监听器的主要用途之一

2,系统启动时加载初始化信息,包括一些缓存,功能的定时器

3,统计网站访问量,每次请求都可通过request来获取

4,跟Spring结合,做相关的操作

 

拦截器和过滤器的区别与作用?

区别:

拦截器是AOP( Aspect-Oriented Programming)的一种实现,底层通过动态代理模式完成。

 1. 拦截器是基于java的反射机制的,而过滤器是基于函数回调(实现的filter接口中doFilter方法),这是两者最本质的区别。

 2. 拦截器不依赖与servlet容器(与servlet容器无关),过滤器依赖与servlet容器(只能在servlet容器中执行)。

 3. 拦截器只能对action请求起作用,而过滤器则可以对几乎所有的请求起作用。

 4. 拦截器可以访问action上下文、值栈里的对象,而过滤器不能访问。

 5. 在action的生命周期中,拦截器可以多次被调用,而过滤器只能在容器初始化时被调用一次拦截器的代码实现(加载的时候在init方法声明)。

6.拦截器可以获取IOC容器中的各个bean,而过滤器就不行,这点很重要,在拦截器里注入一个service,可以调用业务逻辑。

作用:

拦截器:主要的用途是过滤字符编码、做一些业务逻辑判断等。

过滤器:过滤特定请求资源请求信息和响应信息,值获取自己需要的信息

 

char型变量中能不能存储中文字符?为什么?

能,char类型是用来存储unicode编码的,汉字包含在了unicode编码中,所以char可以存储汉字,如果unicode编码不包含某个特殊的汉字那就不能存储这个汉字了。

char占2个字节

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值