关于ssh的乱码问题:
一、jsp页面编码:<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
二、struts2配置文件:<constant name="struts.i18n.encoding" value="UTF-8"></constant>
三、spring的配置文件,applicationcontext.xml
<property name="url" value="jdbc:mysql://localhost:3306/"></property>
<property name="username" value="root"></property>
<property name="password" value="root"></property>
<property name="connection.useUnicode" value="true"></property>
<property name="connection.characterEncoding" value="UTF-8"></property>
四、web.xml
<!-- 编码过滤器 forceEncoding这个参数,把它设置为true表示不管请求中的编码是什么格式,都将强制采用encoding中设置的编码方式。另外对于响应也将按照encoding指定的编码进行设置。 -->
<filter>
<filter-name>encoding</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>encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
五、mysql数据库编码问题:
show variables like 'character%';查看mysql编码
在my.ini文件修改编码
找到客户端配置[client] 在下面添加
default-character-set=utf8 默认字符集为utf8
在找到[mysqld] 添加
default-character-set=utf8 默认字符集为utf8
init_connect='SET NAMES utf8' (设定连接mysql数据库时使用utf8编码,以让mysql数据库为utf8运行)
六、tomcat默认编码与页面编码不一致,修改tomcat编码