level 1
springmvc实现HandlerInterceptor接口的拦截器,重新preHandle方法,拦截器能正常工作,就是拦截后不能转跳页面,有人说是因为Ajax,还有人让我在preHandle方法中抛出异常,在写类处理异常,然后将信息返回到Ajax中,让Ajax转跳页面,可是实现不了,也不知道是哪错了,求大神指点。
2016年11月24日 07点11分
1
level 8
request.getrequestdispatcher不能跳转吗?
2016年11月24日 08点11分
2
不能,好像是应为springmvc框架中比如输出return “index”;它在配置文件中就会自动匹配index的前缀"/项目名/jsp/"和后缀“.jsp”去转跳到index.jsp页面。
2016年11月29日 09点11分
level 1
public boolean preHandle(HttpServletRequest request, HttpServletResponse response,Object handler) throws Exception {
String contextPath=request.getContextPath();
String url=request.getServletPath().toString(
HttpSession session = request.getSession()
String username = (String) session.getAttribute("username")
if (username == null)
response.sendRedirect(contextPath+"index.jsp");
}
return true;
}
2016年11月29日 09点11分
4
好像是应为springmvc框架中比如输出return “index”;它在配置文件中就会自动匹配index的前缀"/项目名/jsp/"和后缀“.jsp”去转跳到index.jsp页面。
2016年11月29日 09点11分
level 1
req.getRequestDispatcher("/WEB-INF/views/login.jsp").forward(req, resp);完美解决此问题
2018年07月22日 06点07分
9