JavaWeb 三大件——Servlet_Filter_Listener

1、Java Web三大件是什么?有什么相似之处?

	Servlet、Filter、Listener

相似之处:三者在编写完之后都需要配置

2、如何编写一个过滤器,常用方法有哪些?

	1. 定义一个类,实现接口Filter
	2. 复写方法
	3. 配置拦截路径
		1. web.xml
		2. 注解

常用方法:

3、Filter一般在项目中处理哪些问题?

一般用于完成通用的操作。如:登录验证、统一编码处理、敏感字符过滤...

4、Filter的两种配置方式

注解配置 @WebFilter("/*")
xml配置

<filter>
	<filter-name>demo1</filter-name>
	<filter-class>cn.qfedu.web.filter.FilterDemo1</filter-class>
</filter>

<filter-mapping>
	<filter-name>demo1</filter-name>
	<!-- 拦截路径 -->
	<url-pattern>/*</url-pattern>
</filter-mapping>

5、Filter的4种拦截配置规则

	1. 具体资源路径: /index.jsp   只有访问index.jsp资源时,过滤器才会被执行
	2. 拦截目录: /user/*	访问/user下的所有资源时,过滤器都会被执行
	3. 后缀名拦截: *.jsp		访问所有后缀名为jsp资源时,过滤器都会被执行
	4. 拦截所有资源:/*		访问所有资源时,过滤器都会被执行

6、dispatcherTypes属性是干嘛用的?

拦截方式配置:资源被访问的方式
1. 注解配置:
	设置dispatcherTypes属性
	1. REQUEST:默认值。浏览器直接请求资源
	2. FORWARD:转发访问资源
	3. INCLUDE:包含访问资源
	4. ERROR:错误跳转资源
	5. ASYNC:异步访问资源
2. web.xml配置
设置<dispatcher></dispatcher>标签即可
<dispatcher>REQUEST</dispatcher>

7、多个过滤器之间的一个执行顺序是什么?

1. 注解配置:按照类名的字符串比较规则比较,值小的先执行
	 如: AFilter 和 BFilter,AFilter就先执行了。
2. web.xml配置: <filter-mapping>谁定义在上边,谁先执行

8、过滤器中如何判断一个用户是否登录?

在登陆页面中创建一个session,存放登陆的用户名;
每次拦截到页面等程序,判断session的值是否为空,
	如果为空,则未登录;
	如果不为空,则已经登陆。

9、啥是监听器,两种配置方式是什么?

监听器
监听器是一种Servlet中的特殊的类,它们能帮助开发者监听web中的特定事件,
比如ServletContext,HttpSession,ServletRequest的创建和销毁;
变量的创建、销毁和修改等。可以在某些动作前后增加处理,实现监控。
配置方式

10、ServletContext对象什么时候被创建,什么时候被销毁?

11、web.xml中都包含哪些配置,执行顺序是什么?

1、Servlet
2、Filter
3、Listener
4、初始化参数context-param
5、welcome-file-list

执行顺序

<context-param> -> <listener> -> <filter> -> <servlet>

12、我们知道分页查询需要使用 limit 开始位置,查询条数这样的SQL,那么现在知道了当前页数page,每页显示的条数rows,如何求开始位置,请用公式表示。

13、重定向和内部转发的区别,什么时候使用重定向,什么时候使用内部转发?

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值