用springmvc发现一个奇怪的问题,web.xml配置如下:
<servlet>
<servlet-name>springmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/config/login-servelet.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
按照上面的配置,直接访问http://localhost:8080/StudySpringMVC/login.jsp,程序没有走DispatcherServlet,如果访问的是但是http://localhost:8080/StudySpringMVC/login.jpg,程序在DispatcherServlet中暂停了(设置的有断点),请问是不是tomcat容器默认就对jsp放行了,还是springmvc默认放行了。
如果改成
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
所有访问都拦截了,<url-pattern>/</url-pattern>和<url-pattern>/*</url-pattern>
有什么区别了,请各位赐教。
<servlet>
<servlet-name>springmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/config/login-servelet.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
按照上面的配置,直接访问http://localhost:8080/StudySpringMVC/login.jsp,程序没有走DispatcherServlet,如果访问的是但是http://localhost:8080/StudySpringMVC/login.jpg,程序在DispatcherServlet中暂停了(设置的有断点),请问是不是tomcat容器默认就对jsp放行了,还是springmvc默认放行了。
如果改成
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
所有访问都拦截了,<url-pattern>/</url-pattern>和<url-pattern>/*</url-pattern>
有什么区别了,请各位赐教。