如题
<!-- encoding过滤器 -->
<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 规范中对 url-pattern 的解释是这样的:
/* 是路径匹配
/ 是倒数第二种有特别说明,此时如果是 / 说明请求路径是一个空字符串,而应用中一般没有能匹配的路径的。
/表示项目根路径、即只能访问locahost:8080才会被映射到
/*表示项目根路径下面的所有url,即localhost:8080/xxx都会被映射到
当然这个和底层源代码解析有关。如果写解析这个web.xml那个人将/解析成localhost:8080/xxx都能访问,那你写/就没问题。