1. 在eclipse中查看源码时(由eclipse自动反编译)中文注释出现乱码
1.1 方法壹
- Window>>>Preferences>>>General>>>Workspace>>>设置字符编码格式;
- 重启eclipse。
1.2 方法贰
- Window>>>Preferences>>>General>>>Content Types>>>Java Calss File 和 Text>>>设置编码格式;
- 重启eclipse。
2. controller层处参数(URL请求携带的参数传入controller层)出现乱码
2.1 在web.xml中加入字符编码过滤器
<!-- web.xml中配置 -->
<filter>
<description>字符编码过滤器</description>
<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>
2.2 修改Tomcat的默认编码格式
- 注壹:我们用Tomcat作为运行Servlet和Jsp的容器,其内部默认编码格式为ISO-8859-1;
- 注贰:对于get请求方式,其传递的数据(URI)会附加在访问的资源后面,其编码是Tomcat默认编码,即ISO-8859-1。
(1)修改Tomcat默认编码格式:
Tomcat目录下>>>server.xml>>>下图位置>>>加入URIEncoding="UTF-8"
(2)在eclipse中移除下图Tomcat服务,后重新载入。
2.3 若使用maven自带Tomcat插件运行Tomcat,则需要在插件中配置编码格式
(1)插件运行;
(2)配置;
(3)导入插件,并设置Tomcat的编码格式,默认为ISO-8859-1。
<!-- pom.xml中配置 -->
<build>
<plugins>
<!-- java编译插件 -->
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<!-- 设置Tomcat的编码格式 -->
<configuration>
<server>tomcat7</server>
<uriEncoding>UTF-8</uriEncoding>
</configuration>
</plugin>
</plugins>
</build>