1.创建类实现interceptor接口或者继承abstractinter~~~类

package com.mi.intercepter;

import java.util.Date;

import com.mi.action.LoginAction;
import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.interceptor.Interceptor; public class Intercep implements Interceptor{ private static final long serialVersionUID = 1L; private String name;
@Override
public void destroy() {
System.out.println("destroy is run************");
} @Override
public void init() {
System.out.println("init is run************");
} @Override
public String intercept(ActionInvocation invocation) throws Exception {
LoginAction loginAction = (LoginAction) invocation.getAction(); System.out.println(getName()+"the***starttime is*** "+new Date());
long start = System.currentTimeMillis();
String result = invocation.invoke(); System.out.println("the endtime*** "+new Date());
long end = System.currentTimeMillis(); System.out.println(getName()+"the costtime is *** "+(end-start)+"毫秒");
System.out.println("result s result*** "+result);
return result;
} public String getName() {
return name;
} public void setName(String name) {
this.name = name;
}
}

2.在struts.xml文件中配置已经创建的拦截器,并且配置要拦截诶的action

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<constant name="struts.i18n.encoding" value="utf-8" /> <package name="lee" extends="struts-default"> <interceptors>
<interceptor name="simple" class="com.mi.intercepter.Intercep">
<param name="name">简单拦截器</param>
</interceptor>
</interceptors> <!-- 用户注册的Action -->
<action name="regist" class="com.mi.action.RegistAction">
<!-- 类型转换失败、输入校验失败,转入input对应的视图 -->
<result name="input">/content/registForm.jsp</result>
<result>/content/show.jsp</result>
</action> <action name="login" class="com.mi.action.LoginAction">
<result name="error">/content/error.jsp</result>
<result name="success">/content/welcome.jsp</result>
<interceptor-ref name="defaultStack"></interceptor-ref>
<interceptor-ref name="simple">
<param name="name">改名后的拦截器</param>
</interceptor-ref>
</action>
<action name="*">
<result>/content/{1}.jsp</result>
</action> </package>
</struts>

3.我的loginAction

package com.mi.action;

import com.opensymphony.xwork2.ActionSupport;
public class LoginAction extends ActionSupport {
private static final long serialVersionUID = 1L;
private String username;
private String password; // usernameオトsetterコヘgetterキスキィ
public void setUsername(String username) {
this.username = username;
} public String getUsername() {
return username;
} // passwordオトsetterコヘgetterキスキィ
public void setPassword(String password) {
this.password = password;
} public String getPassword() {
return password;
} public String execute() throws Exception {
System.out.println("ス�executeキスキィヨエミミフ�..........");
Thread.sleep(1500);
if (getUsername().equals("tangxiujuan") && getPassword().equals("tangxiujuan")) {
return SUCCESS;
}
return ERROR;
}
}

4.此时控制台会打印出如下内容,请忽略乱码!!!重点在于拦截器!

struts2拦截器の简单实现(日语系统,请忽略乱码,重在实现)的更多相关文章

  1. 防止未登录用户操作—struts2拦截器简单实现(转)

    原文地址:http://blog.csdn.net/zhutulang/article/details/38351629 尊重原创,请访问原地址 一般,我们的web应用都是只有在用户登录之后才允许操作 ...

  2. struts2拦截器-简单实现非法登录验证

    概念:什么是拦截器 拦截器实现了面向切面的组件,它会影响多个业务对象的公共行为封装到一个个可重用的模块,减少了系统的重复代码,实现高度内聚,确保业务对象的整洁!   为什么使用拦截器 拦截器消除了动作 ...

  3. 从struts2拦截器到自定义拦截器

    拦截器可谓struts2的核心了,最基本的bean的注入就是通过默认的拦截器实现的,一般在struts2.xml的配置中,package内直接或间接继承了struts-default.xml,这样st ...

  4. struts2动态调用+Servlet过滤器+struts2拦截器

    周末真的是懒到心慌...... 本文是在完整s2sh项目基础上添加的,不太了解s2sh项目构建的朋友可以先参考一下这几篇文章: eclipse环境下基于tomcat-7.0.82构建struts2项目 ...

  5. 浅谈Struts2拦截器的原理与实现

    拦截器与过滤器           拦截器是对调用的Action起作用,它提供了一种机制可以使开发者定义在一个action执行的前后执行的代码,也可以在一个action执行前阻止其执行.同时也是提供了 ...

  6. 基于SSH2框架Struts2拦截器的登录验证实现(转)

        大象在这里假设你已经弄清楚了Struts2拦截器的基本概念,可以进入实际运用了.那么我们在之前的基础上只需要做下小小的改变,就可以使用Struts2的拦截器机制实现登录的验证.     修改数 ...

  7. Struts2拦截器原理以及实例

    一.Struts2拦截器定义 1. Struts2拦截器是在访问某个Action或Action的某个方法,字段之前或之后实施拦截,并且Struts2拦截器是可插拔的,拦截器是AOP的一种实现. 2. ...

  8. (三)Struts2 拦截器

    所有的学习我们必须先搭建好Struts2的环境(1.导入对应的jar包,2.web.xml,3.struts.xml) 第一节:拦截器简介 (百度百科Struts2) Struts2 拦截器是在访问某 ...

  9. Struts2拦截器登录验证

    Struts2拦截器 Struts2拦截器的概念和Spring Mvc拦截器一样. Struts2拦截器是在访问某个Action或Action的某个方法,字段之前或之后实施拦截,并且Struts2拦截 ...

随机推荐

  1. net use

    net use * \\ipaddr\share "password" /user:"username" /persistent:yes 在运行中输入“\\”+ ...

  2. JS实现操作成功定时回到主页效果

    效果图: 页面代码 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> < ...

  3. UITextView打开文字中的URL

    1. 背景介绍 UITextView里显示的文字带有url,点击url可以打开对应的网页,可以分两种打开方式:(1)在App内打开url:(2)用safari打开url. 2. 实现代码: (1)声明 ...

  4. 学习一下Fiddler的强大

    ①引言:Fiddler (中文名称:小提琴)是一个 HTTP 的调试代理,以代理服务器的方式,监听系统的Http网络数据流动, Fiddler 可以也可以让你检查所有的 HTTP 通讯,设置断点,以及 ...

  5. Linq To Sql多表联合查询

    var pro = (from ps in db.ProductInfoes join pt in db.ProductTypees on ps.productType equals pt.pType ...

  6. Vue.2.0.5-Class 与 Style 绑定

    Class 与 Style 绑定 数据绑定一个常见需求是操作元素的 class 列表和它的内联样式.因为它们都是属性 ,我们可以用v-bind 处理它们:只需要计算出表达式最终的字符串.不过,字符串拼 ...

  7. webService调用的N种方式

    一.服务器端代码 新建一个web Service Project工程(貌似普通的java工程也可以,这里不太明白各种webService的框架有什么区别),建立如下的类: package com.bo ...

  8. iOS面试必看,最全梳理

    序言 目前形势,参加到iOS队伍的人是越来越多,甚至已经到供过于求了.今年,找过工作人可能会更深刻地体会到今年的就业形势不容乐观,加之,培训机构一火车地向用人单位输送iOS开发人员,打破了生态圈的动态 ...

  9. Maven开发环境的搭建,含jetty调试[简单明了]

    之前的一片老文,搬过来. 1. Maven的开发环境需要哪些部件a) Maven.去http://maven.apache.org/ 下载.将其bin目录加入进系统PATH.测试方法:用命令mvn – ...

  10. 使用工具追踪Entity Framework生成的SQL

    学习entity framework期间收集的文章,转自http://www.cnblogs.com/hiteddy/archive/2011/10/01/Difference_among_IQuer ...