目录
@WebServlet("/")与@WebServlet("/*")的区别
@WebServlet("/")与@WebServlet("/*")的区别
@WebServlet("/") 和 @WebServlet("/*")的功能特别相似:
1、@WebServlet("/*")标记的servlet,对于任何资源的请求(jsp、html、js、css),都会执行该servlet。
2、@WebServlet("/")标记的servlet,对于jsp的请求,会放行(也就是说,对jsp的请求,不会执行servlet),而对其他资源(html、css、js)的请求,都会执行servlet。
其中,对于@WebServlet("/")来说,如果请求的jsp存在,则直接返回请求的jsp;如果请求的jsp不存在,则报404错误。
而对于@WebServlet("/*")来说,因为对任何资源的请求都只执行servlet,即使请求的jsp存在,也不会直接返回jsp。
对于@WebServlet("/")来说,如果需要将对html、css、js这些静态资源的请求设置为不执行servlet,可以通过下面的方式进行设置: