JavaWeb 三大件——Servlet_Filter_Listener

2019.06.10默写内容

      • 1、Java Web三大件是什么?有什么相似之处?
      • 2、如何编写一个过滤器,常用方法有哪些?
      • 3、Filter一般在项目中处理哪些问题?
      • 4、Filter的两种配置方式
      • 5、Filter的4种拦截配置规则
      • 6、dispatcherTypes属性是干嘛用的?
        • 拦截方式配置:资源被访问的方式
          • 1. 注解配置:
          • 2. web.xml配置
      • 7、多个过滤器之间的一个执行顺序是什么?
      • 8、过滤器中如何判断一个用户是否登录?
      • 9、啥是监听器,两种配置方式是什么?
      • 10、ServletContext对象什么时候被创建,什么时候被销毁?
      • 11、web.xml中都包含哪些配置,执行顺序是什么?
      • 12、我们知道分页查询需要使用 limit 开始位置,查询条数这样的SQL,那么现在知道了当前页数page,每页显示的条数rows,如何求开始位置,请用公式表示。
      • 13、重定向和内部转发的区别,什么时候使用重定向,什么时候使用内部转发?

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

	Servlet、Filter、Listener

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

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

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

常用方法:

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

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

4、Filter的两种配置方式

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

<filter>
	<filter-name>demo1filter-name>
	<filter-class>cn.qfedu.web.filter.FilterDemo1filter-class>
filter>

<filter-mapping>
	<filter-name>demo1filter-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配置
设置标签即可
REQUEST

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

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

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

执行顺序

 ->  ->  -> 

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

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

你可能感兴趣的:(问答_默写)