1.Filter: 过滤器
#概念:
*生活中的过滤器: 净水器,空气进化器,...
*web中过滤器: 当访问服务器的资源时,过滤器可以将请求拦截下来,完成一些特殊的的功能;
*过滤器的作用:
#一般用于完成通用的操作 如: 登录验证 , 统一编码处理. 铭感字符的过滤 ,
#过滤客户端到服务端的请求
#快速入门:
1.步骤:
*定义一个类,实现接口Filter
*复写方法
*配置 (拦截路径)2种
1.web.xml
2.注解的配置
#过滤器细节:
1.web.xml配置
2.过滤器执行流程
*执行过虑器
*执行放行后的资源
*回来执行过滤器放行后的代码
3.过滤器生命周期方法
#init :在服务器启动后,会创建Filter对象然后调用init方法(执行一次)
#doFilter: 每一次请求拦截执行(多次)
#destroy: (执行一次),服务器正常关闭,和Servlet类似
4.过滤器配置详解
* 拦截路径的配置 :
1.具体的路径 : /index.jsp
2.目录拦截 : /user/*
3.后缀名拦截 : *.jsp
4.拦截所有资源 : /*
*拦截方式的配置 : 资源被访问的方式
1.注解配置
#设置dispatcharTypes属性
1.request: 默认值 ,浏览器直接请求资源
2.forward:转发访问资源
3.include: 包含访问资源
4.error: 错误跳转资源
5.async: 异步访问资源
2.web.xml配置
#设置<dispatchaer></....>标签
5.过滤器链(配置多个过滤器)
*执行顺序: 如果有两个过滤器: 过滤器1 和2
# 1,2,代码,2,1
*过滤器的先后顺序问题:
1.注解配置 : 按照类名的字符串比较规则比较,值小的先执行
#如: afilter 和 bfilter 先a再b
2.web.xml配置 : 谁定义在上面,谁先执行
#增强对象的功能:
*.设计模式: 一些通用的解决固定问题的方式(23种)
1.装饰模式:
2.代理模式:
*概念
1.真实对象:被代理的对象
2.代理对象;
3.代理模式: 代理对象代理真实对象,达到增强真实对象功能的目的
*实现方式::
1.静态代理: 有一个类文件描述代理模式
2.动态代理: 在内存中形成代理类
* 实现步骤:
1. 代理对象和真实对象实现相同的接口
2. 代理对象 = Proxy.newProxyInstance();
3. 使用代理对象调用方法。
4. 增强方法
* 增强方式:
1. 增强参数列表
2. 增强返回值类型
3. 增强方法体执行逻辑 |
|