【Struts2三】拦截器
拦截器:就是在訪问action之前。对其进行拦截!能够在拦截器中做一些逻辑的处理!
比方权限验证。没有权限就不给予訪问!
|
import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.interceptor.Interceptor;
/**
* 定义自己的拦截器,须要实现Intercept接口!
*
*/
public class MyInterceptor implements Interceptor{
public void destroy()
{ }
public void init()
{ }
/**
* 重写intercept方法,在该方法中实现自己的拦截逻辑!
* 调用invocation.invoke()方法放行action!
*/
public String
intercept(ActionInvocation invocation) throws Exception { System. out.println("图片上传" );
return invocation.invoke();
// return null;//不运行action
}
}
|
|
<?xml version= "1.0" encoding ="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache
Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="interceptor" namespace="/" extends="struts-default" >
<!-- 声明拦截器,拦截器声明应该位于action之前-->
<interceptors>
<!--声明自定义的拦截器
--> <interceptor name= "imageInterceptor"
class= "cn.itheima03.struts2.interceptor.MyInterceptor" ></interceptor>
<!-- 声明拦截器栈
--> <interceptor-stack name= "myInterceptor">
<interceptor-ref name="imageInterceptor" ></interceptor-ref>
<interceptor-ref name="defaultStack" ></interceptor-ref>
</interceptor-stack>
</interceptors>
<!-- 改动默认的拦截器栈
--> <default-interceptor-ref name="myInterceptor" ></default-interceptor-ref>
<!--声明action,在运行action之前。会先运行拦截器中的方法
--> <action name= "interceptorAction_*" method ="{1}"
class= "cn.itheima03.struts2.interceptor.InterceptorTestAction" >
<result>
index.jsp
</result>
</action>
</package >
</struts>
|
|
import com.opensymphony.xwork2.ActionSupport;
public class InterceptorTestAction extends ActionSupport{
public String
interceptor(){ System. out.println("interceptor" );
return SUCCESS ;
}
}
|
【Struts2三】拦截器的更多相关文章
- struts2(三)拦截器
拦截器 需求 如果要访问某一个action类中的某一个方法的内容,如果是admin用户,则访问,如果不是admin用户,则不能访问. 实现 缺点 权限判断的代码和业务逻辑代码混合在一起了 利用拦截器 ...
- JavaWeb框架_Struts2_(三)---->Struts2的拦截器
2. Struts2的拦截器(使用拦截器实现权限控制) 2.1 拦截器的概述 拦截器是Struts2的核心组成部分,它可以动态的拦截Action调用的对象,类似与Servlet中的过滤器.Struts ...
- struts2总结六: Struts2的拦截器
一.Struts2的系统结构图
- Struts2使用拦截器完成权限控制示例
http://aumy2008.iteye.com/blog/146952 Struts2使用拦截器完成权限控制示例 示例需求: 要求用户登录,且必须为指定用户名才可以查看系统中某个视图资源:否 ...
- Struts2【拦截器】就是这么简单
什么是拦截器 拦截器Interceptor.....拦截器是Struts的概念,它与过滤器是类似的...可以近似于看作是过滤器 为什么我们要使用拦截器 前面在介绍Struts的时候已经讲解过了,Str ...
- (转)Struts2的拦截器
http://blog.csdn.net/yerenyuan_pku/article/details/68648101 Struts2的拦截器 拦截器的概述 拦截器,在AOP(Aspect-Orien ...
- 【跟我一步一步学Struts2】——拦截器
前言 前面提到过拦截器.而且说拦截器仅仅能拦截Action.这里拦截器的调用体现了责任链模式.为什么说体现了责任链模式呢? 以下的一段话说的非常明确: Struts2将整个运行划分成若干同样类型的元素 ...
- JavaWeb_(Struts2框架)拦截器interceptor
此系列博文基于同一个项目已上传至github 传送门 JavaWeb_(Struts2框架)Struts创建Action的三种方式 传送门 JavaWeb_(Struts2框架)struts.xml核 ...
- (六)Struts2的拦截器
一.简介 拦截器体系是struts2重要的组成部分.正是大量的内建拦截器完成了该框架的大部分操作. 比如params拦截器将请求参数解析出来,设置Action的属性.servletConfig拦截器负 ...
- 简单理解Struts2中拦截器与过滤器的区别及执行顺序
简单理解Struts2中拦截器与过滤器的区别及执行顺序 当接收到一个httprequest , a) 当外部的httpservletrequest到来时 b) 初始到了servlet容器 传递给一个标 ...
随机推荐
- php将数组或字符串写入文件
//将数组保存在文件里 function export_to_file($file, $variable) { $fopen = fopen($file, 'wb'); if (!$fopen) { ...
- WebGoat学习(一)--环境搭建
参考https://www.owasp.org/index.php/Category:OWASP_WebGoat_Project https://github.com/WebGoat/WebGoat ...
- 63.note.js之 Mongodb在Nodejs上的配置及session会话机制的实现
转自:https://www.cnblogs.com/alvin_xp/p/4751784.html 1.第一步安装mongodb数据库,这直接官网下载,这里不介绍. 2.也可以使用npm实现直接下载 ...
- 应用Linux远程桌面(附视频)
650) this.width=650;" border="0" alt="" src="http://img1.51cto.com/att ...
- 2019.05.08 《Linux驱动开发入门与实战》
第六章:字符设备 申请设备号---注册设备 1.字符设备的框架: 2.结构体,struct cdev: 3.字符设备的组成: 4.例子: 5.申请和释放设备号: 设备号和设备节点是什么关系.? 设备驱 ...
- centos7基础配置
记录虚拟机安装完成后的初始配置: 1.网络: 桥接方式,设置静态ip,与物理机同一网段 Ip配置 配置完成 service network restart ,重启网络后 物理机可ssh连接虚拟机系统. ...
- js04---object1
我们目前为止大多数引用类型都是Object类型的实例,Object也是ECMAScript中使用最多的一种类型(就像java.lang.Object一样,Object类型是所有它的实例的基础).Obj ...
- TimePickerDialog -下划线颜色修改
首先就是去framework下去找与之相关的theme属性 最开始的时候,直接找的是<item name="datePickerStyle">@style/Widget ...
- java中goto语句
goto是java中一个保留字,但在语言中并未使用它. goto语句起源于汇编语言的程序控制,是源码级上的跳跃,这使其招致了不好的声誉,若一个程序总是从一个地方跳转到另一个地方, 还有什么办法能识别程 ...
- Eclipse&STS常用小技巧
开发是经常用到的代码可进行快捷提示,比如mian alt+/就提示出了main方法是不是很方便,为什么就能提示出来呢? 马上来了: 在你使用的java开发工具中点击Window--->Prefe ...