场景
后台管理系统,用户登录打开WEB-INF目录下的后台首页。此时若采用请求转发的方式,在打开的后台首页中每刷新一次页面,就会执行登录操作。
解决方案
第一步:在web.xml文件中添加如下配置
<servlet>
<servlet-name>managerIndex</servlet-name>
<jsp-file>/WEB-INF/manager/index.jsp</jsp-file>
</servlet>
<servlet-mapping>
<servlet-name>managerIndex</servlet-name>
<url-pattern>/managerIndex</url-pattern>
</servlet-mapping>
第二步:在用户登录的处理逻辑中,添加代码:
if (admin != null) {
//将用户信息保存到Session
request.getSession().setAttribute(GlobalConst.SESSION_ADMIN, admin);
//打开前端首页
response.sendRedirect(request.getContextPath() + "/managerIndex");
} else {
return "redirect:/manager?op=openLogin";
}
在浏览器中登录请求上述Servlet,可以访问到WEB-INF下的index.jsp页面了。