1:表单提交controller获得中文参数后乱码解决方案

注意:  jsp页面编码设置为UTF-8

页面<meta> 标签设置成UTF-8

form表单提交方式为必须为post,get方式下面spring编码过滤器不起效果

  1. <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
  2.  
  3. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  4.  
  5. <form:form modelAttribute="person" action="action32">

修改web.xml,增加编码过滤器,如下(注意,需要设置forceEncoding参数值为true;最好在web.xml的最前面)

  1. <!--设置字符UTF-8 -->
  2. <filter>
  3. <filter-name>characterEncodingFilter</filter-name>
  4. <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
  5. <init-param>
  6. <param-name>encoding</param-name>
  7. <param-value>UTF-8</param-value>
  8. </init-param>
  9. <init-param>
  10. <param-name>forceEncoding</param-name>
  11. <param-value>true</param-value>
  12. </init-param>
  13. </filter>
  14. <!-- 对所有请求有效 -->
  15. <filter-mapping>
  16. <filter-name>characterEncodingFilter</filter-name>
  17. <url-pattern>/*</url-pattern>
  18. </filter-mapping>

注意:

数据库编码是否支持中文

数据库表和表字段是否正确

 

在配置连接数据库的参数设置修改:

  1. <property name="url" value="jdbc:mysql://localhost:3306/dbname?useUnicode=true&characterEncoding=UTF-8"></property>

 

版权声明:本文为zhangdang原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/zhangdang/p/8350383.html