在使用SpringMVC时我们通常访问Controller的路径是以 .do结尾的,但是这样的路径一般不够友好,那么如何去掉呢
1.web.xml配置前端控制器和字符编码过滤器时拦截路径如下,由原来的.do--->/ 和 /*
<!-- 字符编码过滤器 -->
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>utf-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- 前端控制器 -->
<servlet>
<servlet-name>springmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>
classpath:spring/springmvc-servlet.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>
2.在springmvc-servlet.xml中设置静态资源访问不经过前端控制器,而是直接访问资源
<!--对静态资源文件的访问-->
<mvc:resources mapping="/demo/**" location="/demo/" />
<mvc:resources mapping="/frame/**" location="/frame/" />
<mvc:resources mapping="/js/**" location="/js/" />
<mvc:resources mapping="/json/**" location="/json/" />
至此配置完成 请求路径:http://localhost:8085/queryTalentinfo