永远的乔布斯
活着就是为了改变世界
BlogJava
首页
新随笔
联系
聚合
管理
随笔档案
2011年12月 (5)
2011年11月 (29)
最新随笔
1. JAVA 继承基本类、抽象类、接口
2. java实现冒泡排序
3. java插入排序
4. 什么是SQL注入式攻击
5. 用HQL进行实体查询
6. “md5+随机”方式加密
7. 继承的优缺点
8. 视图与临时表的区别
9. 常见的数据库基础面试题大全
10. Maven常用命令
最新评论
1. re: 总结了Struts1与Struts2的12点区别[未登录]
谢谢!
--ada
2. re: 浅谈Ajax的原理[未登录]
very good
--ccc
3. re: 总结了Struts1与Struts2的12点区别
很好很详细,感谢分享
--windzhjx
4. re: 浅谈Ajax的原理[未登录]
不错不错 原理很明白 就是木有实例
--123
5. re: 总结了Struts1与Struts2的12点区别
@旺才
你是学知识的吗,有病
--fage
用拦截器实现登录验证功能AuthorizationInterceptor
Posted on 2011-11-22 09:23
陈小东
阅读(755)
评论(0)
编辑
收藏
用拦截器实现登录验证功能AuthorizationInterceptor
package
com.interceptor;
import
com.opensymphony.xwork2.ActionInvocation;
import
com.opensymphony.xwork2.interceptor.
*
;
import
com.opensymphony.xwork2.
*
;
import
java.util.
*
;
/** */
/**
*
@author
http://xp9802.iteye.com/
*/
public
class
AuthorizationInterceptor
extends
AbstractInterceptor
{
private
String ignoreActions;
//
ignoreActions属性的getter方法
public
String getIgnoreActios()
{
return
ignoreActions;
}
//
ignoreActions属性的setter方法
public
void
setIgnoreActions(String ignoreActions)
{
this
.ignoreActions
=
ignoreActions;
}
@Override
public
String intercept(ActionInvocation invocation)
throws
Exception
{
ActionContext ctx
=
invocation.getInvocationContext();
Map session
=
ctx.getSession();
String user
=
(String) session.get(
"
username
"
);
boolean
ignore
=
false
;
String currentAction
=
invocation.getProxy().getActionName();
String[] actions
=
ignoreActions.split(
"
,
"
);
for
(String action : actions)
{
if
(currentAction.matches(action.trim()))
{
ignore
=
true
;
break
;
}
}
if
(user
!=
null
||
ignore
==
true
)
{
return
invocation.invoke();
}
else
{
return
Action
<
interceptors
>
<
interceptor
name
="authorization"
class
="com.interceptor.AuthorizationInterceptor"
/>
<
interceptor-stack
name
="myStack"
>
<
interceptor-ref
name
="authorization"
>
<
param
name
="ignoreActions"
>
validate_code,register.*,.*login.*,upload,connector
</
param
>
</
interceptor-ref
>
<
interceptor-ref
name
="defaultStack"
/>
</
interceptor-stack
>
lt;/interceptors>
<
default-interceptor-ref
name
="myStack"
/>
.LOGIN;
}
}
}
在struts.xml文件里面配置该拦截器:
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
知识库
C++博客
博问
管理
常用链接
我的随笔
我的评论
我的参与
最新评论
评论排行榜
1. 总结了Struts1与Struts2的12点区别(17)
2. 浅谈Ajax的原理(8)
3. eclipse最佳设置(4)
4. 常用SQL语法大全----菜鸟级【值得珍藏】(4)
5. “md5+随机”方式加密(2)
阅读排行榜
1. 总结了Struts1与Struts2的12点区别(57488)
2. eclipse最佳设置(28862)
3. 浅谈Ajax的原理(11358)
4. 常见的数据库基础面试题大全(5863)
5. Java或者JAR包获取读取资源文件的路径的问题总结(3992)
posts - 34, comments - 38, trackbacks - 0, articles - 0
Copyright © 陈小东