SpringMVC出現中文亂碼解決方法

在web.xml中配置
html

 <!-- 配置字符集 -->
	<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>

/ 和 /* 的區別(摘抄):java

老是現象就是:
spring用到forward("/WEB-INF/jsp/*.jsp")
而forward固然是又要通過web.xml的映射的,
而後,在URL匹配時,
<url-pattern>/</url-pattern> 不會匹配到*.jsp,致使進入spring的DispatcherServlet類,而後去尋找controller,接着找不到對應的controller因此報錯。web

<url-pattern>/*</url-pattern> 會匹配*.jsp,不會進入spring的DispatcherServlet類


總之,關於web.xml的url映射的小知識:
<url-pattern>/</url-pattern> 會匹配到/login這樣的路徑型url,不會匹配到模式爲*.jsp這樣的後綴型url
<url-pattern>/*</url-pattern> 會匹配全部url:路徑型的和後綴型的url(包括/login,*.jsp,*.js和*.html等) spring

相關文章
相關標籤/搜索