錯誤描述
### SQL: insert into t_customer(name,gender,phone,address) values (?,?,?,?)
### Cause: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'gender' at row 1
錯誤原因
可能是頁面提交表單如下:value值為字符男或女,web.xml中又沒有設置編碼過濾器,導致提交的中文男或女產生了亂碼,長度大於了數據庫字段gender(類型可能為char)的長度
客戶性別:
<input type="radio" name="gender" value="男">男
<input type="radio" name="gender" value="女">女<br/>
解決辦法
在web.xml增加編碼過濾器配置
<filter>
<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</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CharacterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>