@IocBean
public class LoginInterceptor implements MethodInterceptor{
private static final Log log = Logs.get();
public void filter(InterceptorChain chain) throws Throwable {
log.info("LoginInterceptor start -->" + chain.getCallingMethod()+chain.getArgs());
HttpServletRequest req = Mvcs.getReq();
HttpServletResponse resp = Mvcs.getResp();
Date date = (Date) req.getSession().getAttribute(KeyUtils.LOGIN_TIME);
if((date==null || DateUtils.pastMinutes(date)>=KeyUtils.LOGIN_TIME_LENTH)){
resp.sendRedirect(req.getServletContext().getContextPath()+"/login");
}else{
chain.doChain();// 继续执行其他拦截器
}
log.info("LoginInterceptor end -->" + chain.getCallingMethod()+chain.getArgs()+chain.getReturn());
}
}
这思路大概就是,先有Fileter进行拦截,只判断是否有登录,页面给什么就跳转什么
等调到页面时再进行方法拦截处理,看是否有登录,如未登录,提醒登录或注册
1、目前遇到的问题就是在MethodInterceptor 跳转不了,会出现页面重叠,无法直接window.open
2、想问一下各位大神不知道这个思路是不是又逻辑漏洞
具体出现这个方法拦截的想法,是因为手机端和pc端的Module不是同一套,PC采用的是NUTZ提供的模板引擎,现在看来其实主要问题是手机端能不能用模板引擎开发系统?