在Tomcat中处理错误页面有两种方式:
- 使用web.xml配置错误页面:在web.xml文件中可以配置全局错误页面和特定错误码对应的错误页面。例如:
404 /error/404.html 500 /error/500.html
- 使用Servlet处理错误页面:可以自定义一个Servlet来处理错误页面,通过实现javax.servlet.ErrorPage接口,处理各种错误页面的情况。例如:
@WebServlet("/errorHandler") public class ErrorHandlerServlet extends HttpServlet implements ErrorPage { @Override public void handleErrorPage(HttpServletRequest request, HttpServletResponse response) { // 处理错误页面逻辑 response.setStatus(HttpServletResponse.SC_INTERNAL_SERVER_ERROR); response.setContentType("text/html"); PrintWriter out = response.getWriter(); out.println(""); out.println("Internal Server Error
"); out.println("Sorry, something went wrong.
"); out.println(""); } }
需要注意的是,以上方式都需要在web.xml中配置Servlet的映射关系或者实现javax.servlet.ServletContainerInitializer接口,以及在Servlet中处理错误页面的逻辑。