目录
一、静态资源访问问题
1、mvc:default-servlet-handler 方式
2、mvc:resources 资源映射 方式
3、两种方式的对比
4、url-pattern拦截方式
二、( Controller ) 处理器方法响应处理
1、返回void
2、返回ModelAndView
3、返回String
三、请求跳转
1、请求转发
2、URL重定向
3、请求转发和重定向的选择
4、URL重定向共享数据
一、静态资源访问问题
跳转到目录
当对前端控制器设置为拦截资源的路径( url-pattern )为/时,此时出现不能访问静态资源的问题。
导致原因 :
在Tomcat中处理静态资源的servlet ( default )所映射路径为就是/。在启动项目的时候,在Tomcat中的web.xml是先加载,项目的web.xml是后加载,如果配置了相同的映射路径,项目中的web.xml会覆盖Tomcat中web.xml相同的配置。
也就是说, SpringMVC中的DispatcherServlet的映射路径覆盖了Tomcat默认对静态资源的处理的路径。此时SpringMVC会把静态资源当做是Controller ,寻找并访问,当然结果肯定是找不到。
为了效果明显,可以在web根目录新建一个test.html ,在images文件夹里面包含一张图片。
1、使用 方式(推荐使用)
跳转到目录
当没有在springmvc-servlet.xml中配置的测试如下:
访问静态页面
访问images下的图片