在配置SpringMVC时,如果在web.xml中的url为<url-pattern>/</url-pattern>时,则会正常返回视图页面,当配置为<url-pattern>/*</url-pattern>时,会报404错误总结原因如下:
当我在客户端调用URL:/user/list然后返回user.jsp视图,当配置的是/时:DispathcherServlet拿到这个请求然后返回对应的controller, 然后通过Dispather Type通过Forward转发到user.jsp视图,即就是请求user.jsp视图(/user/user.jsp),此时Dispather没有拦截/user/user.jsp,因为此时你配置的是默认的/,就顺利的交给ModleAndView去处理显示了。 当配置的是/*:DispathcherServlet拿到这个请求然后返回对应的controller,然后通过Dispather Type通过Forward转发到user.jsp视图,即就是请求user.jsp视图(/user/user.jsp),此时Dispather拦截/user/user.jsp,Dispatcher会把他当作Controller去匹配,没有匹配到就会报404错误。 结论:在配置视图的时候尽量用/这种方式。
SpringMVC报404的一种可能
最新推荐文章于 2022-10-03 11:53:35 发布