java servlet进入死循环

hyhssm 2019-03-03 08:18:25
servlet代码

@WebServlet("/*")
public class StudentServlet extends HttpServlet{

private StudentService stuService = new StudentServiceImpl();
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("访问servlet控制器");
List<Student> list = stuService.shouwAll();
req.setAttribute("list", list);
req.getRequestDispatcher("index.jsp").forward(req, resp);
}
}

当我把@WebServlet("")参数设置为 /* 时,访问就会进入死循环,
debug(本类代码)过程:
System.out.println("访问servlet控制器");-->
List<Student> list = stuService.shouwAll();-->
req.setAttribute("list", list);-->
req.getRequestDispatcher("index.jsp").forward(req, resp);-->(到这都正常,数据也获取到了)
然后就进入了死循环,开始执行:
-->System.out.println("访问servlet控制器");-->...........


然后就栈溢出了





...全文
173 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
博客小欣 2019-03-07
  • 打赏
  • 举报
回复
只有一段servlet代码,那么如果将@webservlet("")的参数设置为/*,系统不就会默认认为无条件加载这个后台么,
  • 打赏
  • 举报
回复
你为也不是监听器或者过滤器,用/*干嘛呀
八位比特 2019-03-03
  • 打赏
  • 举报
回复
这不是很明显么?你不管什么请求路径都跳到这个servlet里执行这个方法,你转发到index.jsp他也要回到你这个方法,肯定是个死循环啊

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧