<div class="markdown_views"> <h4 id="1解决html页面中的中文问题">1.解决HTML页面中的中文问题:</h4> 为了使HTML页面很好地支持中文,就必须在每个HTML页面的头部增加如下代码:
<META http-equiv=Content-Type content="text/html;charset=utf-8">- 1
为了使JSP页面很好地支持中文,就必须在每个JSP页面的头部增加如下代码:
<%@ page contentType="text/html;charset=utf-8" language="java"%>- 1
为了使Servlet页面很好地支持中文,就必须在每个Servlet页面的头部增加如下代码:
response.setCharacterEncoding("utf-8");- 1
为了使中文数据在各页面(组件)之间正常传递,最佳的方法就是采用编码过滤器来解决。在WEB.XML中配置一个编码过滤器,内容如下:
<!--定义编码过滤器--> <filter> <filter-name>encodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>gb2312</param-value> </init-param> </filter> <filter-mapping> <filter-name>encodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
检查了很多地方,java文件都已经是utf-8格式
xml和jsp也都设置了utf-8格式
数据库也设置了utf8格式
但是插入和更新数据还是问号
最后发现需要在jdbc.properties文件内指定utf8格式driver=com.mysql.jdbc.Driver url=jdbc:mysql://localhost:3306/ssm?useUnicode=true&characterEncoding=UTF-8
- 1
- 2
修改tomcat下的conf/server.xml文件, 添加URIEncoding=”UTF-8”
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8" /> - 1
- 2
- 3
在springmvc配置文件中添加
<mvc:annotation-driven> <!-- 消息转换器,解决responseBody返回中外乱码问题 --> <mvc:message-converters register-defaults="true"> <bean class="org.springframework.http.converter.StringHttpMessageConverter"> <property name="supportedMediaTypes" value="text/plain;charset=UTF-8" /> </bean> </mvc:message-converters> </mvc:annotation-driven> - 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
文章来源: 【SSM】WEB项目中的中文乱码问题