Struts2 拦截器 理解
来源:互联网 发布:在线数据分析工具 编辑:程序博客网 时间:2024/05/29 17:17
拦截器 理解 原理 作用 事例
对于任何 MVC框架来说,他们都会完成一些通用的控制逻辑:例如解析请求参数,类型转换,将请求参数封装成DTO,执行输入校验,解析文件上传表单中的文件域,防止表单多次提交……这些操作又不是所有Action都需要实现的,所以需要动态的方式来自由组合。Struts2 的做法是,它把大部分核心控制器需要完成的工作按功能分开定义,每个拦截器完成一个功能。而这些拦截器可以自由选择,灵活组合,开发者需要使用哪些拦截器,只需要在 struts.xml 文件中指定使用该拦截器即可。
拦截器可以说相当于是个过滤器:就是把 不想要的或不想显示的内容给过滤掉。拦截器可以抽象出一部分代码可以用来完善原来的action。同时可以减轻代码冗余,提高重用率。
比如在登入一个页面时,如果要求用户密码、权限等的验证,就可以用自定义的拦截器进行密码验证和权限限制。对符合的登入者才跳转到正确页面。这样如果有新增权限的话,不用在action里修改任何代码,直接在interceptor里修改就行了。
拦截器提供了更高层次的解耦,目标代码无需手动调用目标方法,而是由系统完成,从而将这种调用从代码层次上升到更高层次,从而提供了更高层次的解耦。计算机本身是无法 “自动” 调用拦截器方法,它甚至无法知道到底是应该调用哪个拦截器。对Struts 2框架而言,程序通过配置文件来管理拦截器,从而让系统明白:何时应该调用哪个拦截器。
拦截器的用法非常灵活,Struts 2 允许将完成各种 “小功能” 的方法定义成小粒度的拦截器,如果有一些拦截器经常需要固定在一起使用,又可以将这批小粒度的拦截器定义成大粒度的拦截器栈。从结构上来看,拦截器栈相当于多个拦截器的组合;通过组合不同的拦截器,我们能以自己需要的方式来组合 Struts 2 框架的各种功能;通过扩展自己的拦截器,我们可以 “无限” 扩展 Struts 2 框架。因为拦截器是通过配置文件指定的,因此通过拦截器来引入通用操作的方式,完全是可插拔式的,当系统需要执行这些通用操作时,则配置文件引入这些拦截器即可;如果系统不需要执行这些通用操作,则在配置文件中取消引入即可。
- Struts2 拦截器 理解
- Struts2拦截器原理理解
- struts2拦截器的理解
- struts2拦截器的理解
- Struts2 ---拦截器的理解
- Struts2拦截器实现原理的理解
- 深入理解Struts2拦截器(二)
- struts2 拦截器和过滤器理解
- struts2拦截器与过滤器的理解
- Struts2架构图解析以及拦截器的理解
- Struts2中拦截器的理解及源码分析图
- Struts2拦截器的使用心得和理解
- Struts2框架学习之六:理解并使用拦截器
- 【Struts2】Struts2中拦截器
- struts2拦截器
- Struts2拦截器
- struts2.0拦截器
- struts2.0 拦截器
- 学习C语言的四点要素
- 数据库事务的四大特性 AICD
- linux虚拟机
- Android eclipse 全自动补全 不用按 alt+/了
- android模拟器操作
- Struts2 拦截器 理解
- 关于IT测试中的一些问题。
- SQL Server 2008 Express 版的 安装地址(含管理工具)
- Android模拟器调试与真机调试
- Common Part
- Android高手进阶教程(一)-------Android常用名令集锦(图文并茂)!
- 人类的本性
- ZOJ 2587 Unique Attack
- source insight 3.5 技巧