项目场景:
总结一下SSM插入数据库中可能会出现的中文乱码的几种解决方式。
问题描述:
调用插入语句时,数据库或者页面上中文字符为???乱码等。

解决方案:
1.在pom.xml文件中设置字符编码
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
</properties>
2.在web.xml文件中设置
<!--针对 post 乱码-->
<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>
3.在db.properties文件或者在设置数据库链接的url文件中添加?useUnicode=true&characterEncoding=UTF-8
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/ssm?useUnicode=true&characterEncoding=UTF-8
jdbc.username=root
jdbc.password=admin
4.数据库安装时编码格式未设置(以下针对MySQL数据库)可以在数据库中输入指令查看字符编码修改,或者重装。
查看:
show variables like ‘character_set_database’;
修改:
alter database <数据库名> character set utf8;
本文总结了SSM框架在插入数据库时遇到的中文乱码问题,包括pom.xml配置、web.xml配置、db.properties或数据库URL设置以及检查MySQL数据库字符集的解决方法。

368

被折叠的 条评论
为什么被折叠?



