Struts2.3.7技术的汇总之六(权限…
来源:互联网 发布:apache 编译 编辑:程序博客网 时间:2024/05/13 13:58
package cn.itcast.web.struts.interceptors;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.interceptor.Interceptor;
public class PermissionInterceptor implements Interceptor {
public void destroy() {
// TODO Auto-generated method stub
}
public void init() {
// TODO Auto-generated method stub
}
//如果用户没有登录就不允许其访问message页面;
public String intercept(ActionInvocation invocation) throws Exception {
Object object=ActionContext.getContext().getSession().get("student");
if(object!=null){
invocation.invoke();
}
return "error";
}
}
权限拦截这里到不要注意什么,只要继承了Interceptor接口,实现方法即可,配置struts.xml,需要注意和系统默认是拦截器的位置关系:比如:
class="cn.itcast.web.struts.interceptors.PermissionInterceptor" />
拦截器和拦截器 需要定义好后只需在action中指定即可,也可以定义默认拦截器 ,如果action中没有定义拦截器则默认拦截器起作用,否则不起作用。
这里顺便说下原理:即aop技术,环绕通知,想必学过spring的筒子们对这个比较熟悉,什么叫做aop编程呢,即面向切面编程,
我们知道判断权限这个动作对大部分的action都要用到,如果每个都要定义的话就会很麻烦,同时将业务逻辑跟权限拦截代 互相搅合,
程序的可读性比较差,我们想到既然大部分的action都要用到权限拦截这个功能,我们就对其进行抽取封装,定义一个单独的权限拦截,在需要的地方通过反射技术植入。以达到权限拦截的目的。
同时struts的功能主要是通过拦截器来实现的,他内置了许多有用的拦截器,比如文件上 ,表单封装等。
转发至微博
转发至微博
0 0
- Struts2.3.7技术的汇总之六(权限…
- Struts2.3.7技术的汇总之二(注册…
- Struts2.3.7技术的汇总之三(类型…
- Struts2的标签技术之数据标签
- Struts2的标签技术之控制标签
- 六、Struts2之输入校验
- Struts2慢慢学之六----简单的数据校验
- Struts2的资料汇总
- 面试:----技术分析之Struts2的拦截器技术
- struts2的权限验证
- struts2之注解权限控制
- web工作流管理系统开发之六 表单权限与流程的权限控制
- web工作流管理系统开发之六 表单权限与流程的权限控制
- 工作流管理系统开发之六 表单权限与流程的权限控制
- 黑马程序员--Struts2.3.7技术的汇…
- 黑马程序员--Struts2.3.7技术的汇…
- 黑马程序员--Struts2.3.7技术的汇…
- 技术与经济之六:现代化的陷阱
- Struts2.3.7技术的汇总之二(注册…
- Struts2.3.7技术的汇总之三(类型…
- 机器学习中的最优化方法进阶
- 黑马程序员--Struts2.3.7技术的汇…
- 黑马程序员--Struts2.3.7技术的汇…
- Struts2.3.7技术的汇总之六(权限…
- Struts2的笔记整理与复习
- JavaWeb基础回顾
- dom4j解析xml文档
- 【实例】在java中如何获取xml文件数据
- Spring框架所有技术笔记总结
- 对JPA的理解与回顾总结(一)
- 对JPA的理解与回顾总结(二)
- 使用sqoop将oracle数据迁移到hive中