java 登陆拦截_登录拦截 - java代码库 - 云代码
[java]代码库package com.app.common;
import org.apache.log4j.Logger;
import com.app.model.User;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionInvocation;
import com.opensymphony.xwork2.interceptor.AbstractInterceptor;
public class PrivilegeInterceptor extends AbstractInterceptor{
/**
*
*/
private static final long serialVersionUID = 5851995979071627976L;
private static final Logger logger = Logger.getLogger(PrivilegeInterceptor.class);
@Override
public String intercept(ActionInvocation invocation) throws Exception {
logger.info("PrivilegeInterceptor:Action方法拦截");
//获取当前用户
User user = (User) ActionContext.getContext().getSession().get("loginUser");
//获取当前访问的URL,并去掉当前应用程序的前缀(也就是 namespaceName + actionName )
String namespace = invocation.getProxy().getNamespace();
String actionName = invocation.getProxy().getActionName();
logger.info("namespace:" + namespace +" , "+"actionName:" + actionName);
String privilegeUrl = null;
if(namespace.endsWith("/")){
privilegeUrl = namespace + actionName;
}else{
privilegeUrl = namespace + "/" + actionName;
}
//要去掉开头的'/'
if(privilegeUrl.startsWith("/")){
privilegeUrl = privilegeUrl.substring(1);//从1开始截取
}
//String result = null;
//如果未登录用户
if(user==null){
//if(privilegeUrl.endsWith("/login_index" + Constant.S2_ACTION_EXT)
//|| privilegeUrl.endsWith("/login_login" + Constant.S2_ACTION_EXT )){
如果是正在使用登录功能,就放行
//result = invocation.invoke();
//}else{
//如果不是去登录,就转到登录页面
return "login";
//}
}
//如果已经登录,就判断权限
else{
//if(user.hasPrivilegeByUrl(privilegeUrl)){
//如果有权限就放行
return invocation.invoke();
//}else{
//如果没有权限,返回无权限信息
//return "noPrivilegeError";
//}
}
//return result;
}
}
java 登陆拦截_登录拦截 - java代码库 - 云代码相关推荐
- java图书信息添加代码_图书 - java代码库 - 云代码
[java]代码库package com.mahe; import java.awt.BorderLayout; import java.awt.Dimension; import java.awt. ...
- 连连看java代码_连连看 - java代码库 - 云代码
[java]代码库/* * To change this license header, choose License Headers in Project Properties. * To chan ...
- java代码雨_代码雨 - java代码库 - 云代码
[java]代码库import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; ...
- java猜拳游戏代码_猜拳游戏 - java代码库 - 云代码
[java]代码库public class Computer { String name; int score; public int showfist(){ int quan; quan=(int) ...
- java 挂机锁屏 源码_挂机界面 - java代码库 - 云代码
[java]代码库//挂机 package com.view; import java.awt.Color; /** * 挂机界面 * @author Administrator * */ publi ...
- java秒表代码_秒表 - java代码库 - 云代码
[java]代码库package Day0822; import java.awt.event.*; import javax.swing.*; import java.awt.*; public c ...
- ajax代码 java,AJAX - java代码库 - 云代码
[java]代码库1.什么是AJAX AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML). 2.ajax的特点:局部刷新 3.Aj ...
- python代码时钟_时钟 - python代码库 - 云代码
[python]代码库from turtle import * from datetime import * def Skip(step): #建立表的外框 penup() forward(step) ...
- 用python画佩奇_画佩奇 - python代码库 - 云代码
[python]代码库from turtle import* def nose(x,y):#鼻子 pu() goto(x,y) pd() seth(-30) begin_fill() a=0.4 fo ...
最新文章
- 搭建Harbor 2.x仓库 - docker私仓搭建
- 阿里云ARMS助力「叫叫阅读」解锁系统定位分析技能包
- 浅析几种常见算法(转载)
- JDK 7和JDK 8中大行读取速度较慢的原因
- mysql注册slave_创建slave库?spm=a2c4e.11155472的搜索结果-阿里云开发者社区
- String.valueOf() 和 toString的区别
- np.stack() | 数组堆叠
- 奶块1月25日服务器维护时间,奶块1月25更新公告 | 手游网游页游攻略大全
- 事务复制中的msrepl_ccs
- getchar吸收回车
- E45: ‘readonly‘ option is set (add ! to override)
- jQueryphotoClip-图片上传并裁剪
- php框架使用率排行榜2018,中国上网人数统计?2018互联网上网人数分布排名
- 对 VoIP 提供商的大规模 DDoS 攻击和模拟 DDoS 测试
- 关于Java为什么不推荐使用 import *导包这件小事
- 宏观与微观的一秒改变
- 通过Webhook接入钉钉群自定义机器人
- c语言整形如何正确使用除法,简单的C语言移位计算整形乘法和除法值
- 移动办公oa管理软件的五大选择要素有哪些?
- 股票入门——K线理论之二
热门文章
- SQL格式化流水号位数
- WebRTC下载及编译(二)
- Gstreamer应用g_signal_new/g_signal_connect/g_signal_emit总结(十二)
- Pulseaudio实用命令(二)
- 下载最新adb(platform-tools)
- 安防视频之web无插件播放视频
- ES6中的React生命周期详解
- 服务器64位还是32位系统好,云服务器64位还是32位
- html鼠标平滑滚动效果,JS特效代码 JS动态平滑滚动菜单效果
- python reduce函数filter_Python filter()及reduce()函数使用方法解析