struts2拦截器の简单实现(日语系统,请忽略乱码,重在实现)
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拦截器の简单实现(日语系统,请忽略乱码,重在实现)的更多相关文章
- 防止未登录用户操作—struts2拦截器简单实现(转)
原文地址:http://blog.csdn.net/zhutulang/article/details/38351629 尊重原创,请访问原地址 一般,我们的web应用都是只有在用户登录之后才允许操作 ...
- struts2拦截器-简单实现非法登录验证
概念:什么是拦截器 拦截器实现了面向切面的组件,它会影响多个业务对象的公共行为封装到一个个可重用的模块,减少了系统的重复代码,实现高度内聚,确保业务对象的整洁! 为什么使用拦截器 拦截器消除了动作 ...
- 从struts2拦截器到自定义拦截器
拦截器可谓struts2的核心了,最基本的bean的注入就是通过默认的拦截器实现的,一般在struts2.xml的配置中,package内直接或间接继承了struts-default.xml,这样st ...
- struts2动态调用+Servlet过滤器+struts2拦截器
周末真的是懒到心慌...... 本文是在完整s2sh项目基础上添加的,不太了解s2sh项目构建的朋友可以先参考一下这几篇文章: eclipse环境下基于tomcat-7.0.82构建struts2项目 ...
- 浅谈Struts2拦截器的原理与实现
拦截器与过滤器 拦截器是对调用的Action起作用,它提供了一种机制可以使开发者定义在一个action执行的前后执行的代码,也可以在一个action执行前阻止其执行.同时也是提供了 ...
- 基于SSH2框架Struts2拦截器的登录验证实现(转)
大象在这里假设你已经弄清楚了Struts2拦截器的基本概念,可以进入实际运用了.那么我们在之前的基础上只需要做下小小的改变,就可以使用Struts2的拦截器机制实现登录的验证. 修改数 ...
- Struts2拦截器原理以及实例
一.Struts2拦截器定义 1. Struts2拦截器是在访问某个Action或Action的某个方法,字段之前或之后实施拦截,并且Struts2拦截器是可插拔的,拦截器是AOP的一种实现. 2. ...
- (三)Struts2 拦截器
所有的学习我们必须先搭建好Struts2的环境(1.导入对应的jar包,2.web.xml,3.struts.xml) 第一节:拦截器简介 (百度百科Struts2) Struts2 拦截器是在访问某 ...
- Struts2拦截器登录验证
Struts2拦截器 Struts2拦截器的概念和Spring Mvc拦截器一样. Struts2拦截器是在访问某个Action或Action的某个方法,字段之前或之后实施拦截,并且Struts2拦截 ...
随机推荐
- C/C++ 获取汉字拼音
参考文章:http://blog.csdn.net/thenile/article/details/6318521 在参考文章的基础上,去掉了代码中C++特有的语法和数据类型,用纯C语言实现了获取汉字 ...
- Selenium2学习-032-WebUI自动化实战实例-030-JavaScript 在 Selenium 自动化中的应用实例之五(高亮标示元素)
在自动化脚本编写过程中,操作元素之前,需要对元素进行高亮显示(通过修改元素的边框样式),同时进行截图,以记录操作的元素对象.在实际应用中较为少见,通常用于演示,或者发生错误时的屏幕截图捕捉,用于错误报 ...
- ByteBuffer
1.堆内:HeapByteBuffer,在java的堆内创建. 缺点:可能引起堆的不断gc 写文件的时候需要先将堆的buffer写进直接buffer里,然后再写入文件 2.堆外:DirectByteB ...
- iOS 获取UUID
-(NSString*)GetUUID { CFUUIDRef puuid = CFUUIDCreate( nil ); CFStringRef uuidString = CFUUIDCreateSt ...
- 系统UITabBar属性设置
设置背景: [_tabBar setBackgroundImage:[UIImage imageNamed:@"bg_tabbar"]]; 设置某个Item选中的效果: _tabB ...
- typedef 和 const
1. typedef 允许你为各种数据类型定义新名字 #include <stdio.h>typedef char *ptr_to_char; //这让我看起来,好奇怪,不好读void m ...
- linux mknod命令解析
linux mknod命令解析 http://www.cnblogs.com/cobbliu/archive/2011/07/05/2389014.html mknod:make node 生成设备 ...
- 改变DataGrid某一行和单元格的颜色
前段时间做WPF项目,需要改变DataGrid某一行的颜色.高度,以及某个单元格的颜色.单元格字体的颜色,自然就必需取到datagrid的一行和一行的单元格,网上也是搜索了好久才找到,记录下来便于使用 ...
- Inside Kolla - 05 从 tools 目录开始
从 tools 目录开始 在上一篇中已介绍了 Kolla 的源代码目录结构和各个目录中源代码的基本作用,现在开始深入到各个目录,介绍目录中的具体内容.每个人分析代码的思路和方法不同,会选择从不同的目录 ...
- iOS系统版本简介
iOS系统版本简介 ⽬目前iOS设备所⽀支持的最主流操作系统是iOS6,⼤大概占了93%,⽽而使 ⽤用iOS5的iOS设备⼤大概占6%,剩下的只有1%.( 根据苹果的官⽅方数据 ) 从iOS1到现在的 ...