背景是这样的:
在我的第一个index.jsp页面中有代码
<a target="_blank" href="${pageContext.request.contextPath }/Users?method=list">用户管理</a>
是要进入用户管理的userMana.jsp并加载出用户列表。
在UsersServlet.java中有具体的list方法去请求获取用户信息并跳转页面
// b.列表展示
public void list(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
try {
// 调用service查询所有用户
List<Users> list = usersService.getAll();
// 保存,将list保存为listUsers
request.setAttribute("listUsers", list);
// 跳转到用户列表页面
uri = "/detail/Users/userMana.jsp";
} catch (Exception e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
uri = "/error/error.jsp";
}
// 转发
request.getRequestDispatcher(uri).forward(request, response);
}
但是在从index.jsp到userMana.jsp一直出现404错误,后来经过多次尝试,发现在我的usersServlet.java中有个注解,之前一直被我忽视了。
@WebServlet("/Users")
这个应该和<a target="_blank" href="${pageContext.request.contextPath }/Users?method=list">用户管理</a>中保持一致。
修改了之后问题就解决了,但是接着就出现了一些很没水平的问题,我发现我的SQL语句中拼错了单词,把from写成了form,还有语句中的表属性和实体类中定义的大小写有点差异。修改之后这个获取用户信息展示成列表就没有什么问题了。
这些看着没啥水平的问题折腾了我一天半。。。所以以后在写代码的过程中还是要细心细心再细心。