编写一个简单的Struts2 拦截器
来源:互联网 发布:淘宝星期四数码 编辑:程序博客网 时间:2024/05/23 11:54
实现一个拦截器需要implements Interceptor,或者去继承Interceptor的子类(例如抽象类AbstractInterceptor),首先,写一个Interceptor类,实现Interceptor接口。
package com.zhaozy.interceptors;
import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.interceptor.Interceptor;
/**
*
*@authorCapricorn
*
*/
publicclass MyInterceptor implements Interceptor {
publicvoid destroy() {
System.out.println("This is MyInterceptor.destroy()..");
}
publicvoid init() {
System.out.println("This is MyInterceptor.init()..");
}
public String intercept(ActionInvocation invocation) throws Exception {
System.out.println("This is MyIntercepor.intercept()..");
String result = invocation.invoke();
return result;
}
}
写一个Action类,实现登陆功能。
package com.zhaozy.actions;
import com.opensymphony.xwork2.ActionSupport;
/**
*
*@authorCapricorn
*
*/
publicclass LoginAction extends ActionSupport {
private String username;
private String password;
public String getUsername() {
returnusername;
}
publicvoid setUsername(String username) {
this.username = username;
}
public String getPassword() {
returnpassword;
}
publicvoid setPassword(String password) {
this.password = password;
}
@Override
public String execute() throws Exception {
if ("hello".equals(this.getUsername().trim())
&& "world".equals(this.getPassword().trim())) {
returnSUCCESS;
}
this.addFieldError("username", "username or password is error!");
return"failer";
}
}
编写一个登陆界面:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib uri="/struts-tags" prefix="s" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>登陆界面</title>
</head>
<body>
<table>
<tr>
<td style="color:red">
<s:fielderror></s:fielderror>
</td>
</tr>
</table>
<s:form action="login" method="post" theme="simple">
username:<s:textfield name="username" label="username"></s:textfield><br>
password:<s:password name="password" label="password"></s:password><br>
<s:submit label="登陆" value="登陆"></s:submit>
</s:form>
</body>
</html>
这是登陆成功后的显示页面:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>登陆成功</title>
</head>
<body>
<center><h1>恭喜您,登陆成功!!</h1></center>
</body>
</html>
然后配置struts.xml
<?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="struts2" extends="struts-default">
<interceptors>
<interceptor name="myInterceptor" class="com.zhaozy.interceptors.MyInterceptor"></interceptor>
</interceptors>
<action name="login" class="com.zhaozy.actions.LoginAction">
<result name="success">/result.jsp</result>
<result name="input">/login.jsp</result>
<result name="failer">/login.jsp</result>
<interceptor-ref name="myInterceptor"></interceptor-ref>
<interceptor-ref name="defaultStack"></interceptor-ref>
</action>
</package>
</struts>
这样,一个简单的拦截器就写完了,它在登陆界面提交的时候触发
- 编写一个简单的Struts2 拦截器
- Struts2拦截器的一个简单应用
- struts2的拦截器的简单使用
- 最简单的拦截器写法 struts2
- Struts2拦截器的简单示例
- struts2学习-简单的拦截器
- 简单的struts2权限拦截器应用
- Struts2中拦截器的简单实现
- Struts2之拦截器的简单应用
- Struts2登录拦截器的简单示例
- struts2拦截器的简单总结(3)
- Struts2拦截器简单示例
- Struts2拦截器简单示例
- struts2实现简单拦截器
- Struts2拦截器简单模拟
- struts2拦截器 简单了解
- struts2拦截器简单例子
- struts2拦截器简单介绍
- 与病毒作战的一昼夜--宁杀错,不放过!”
- 听妈妈的话 OurJAY
- 电子
- 面向IMS的BREW
- 基于BREW的PTT服务
- 编写一个简单的Struts2 拦截器
- 开始学习了
- [转]VC工程文件说明
- windows 系统oracle数据库数据自动备份
- 监控和剖析数据库操作 -- P6Spy、SQL Profiler、IronTrack SQL
- 我要成为优秀网工
- Windows7常见问题整理
- 一个SQL面试题
- dom4j格式化XML文件