JSP中文傳到Spring MVC controller亂碼問題分析
阿新 • • 發佈:2019-02-01
表單提交controller獲得中文引數後亂碼解決方案
注意: jsp頁面編碼設定為UTF-8
form表單提交方式為必須為post,get方式下面spring編碼過濾器不起效果
- <%@ page language="java"import="java.util.*"pageEncoding="UTF-8"%>
- <formaction="${ctx}/user/addUser"name="userForm"method="post">
修改web.xml,增加編碼過濾器,如下(注意,需要設定forceEncoding引數值為true)
-
<
- <filter-name>characterEncodingFilter</filter-name>
- <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
- <init-param>
- <param-name>encoding</param-name>
-
<param-value>UTF-8
- </init-param>
- <init-param>
- <param-name>forceEncoding</param-name>
- <param-value>true</param-value>
- </init-param>
- </filter>
- <filter-mapping>
-
<filter-name>characterEncodingFilter
- <url-pattern>/*</url-pattern>
- </filter-mapping>
2:表單提交controller獲得中文引數後正常顯示控制檯,然後儲存資料庫出現亂碼
注意:
資料庫編碼是否支援中文
資料庫表和表字段是否正確
在配置連線資料庫的引數設定修改:
- <propertyname="url"value="jdbc:mysql://localhost:3306/dbname?useUnicode=true&characterEncoding=UTF-8"></property>