问题描述:Java web后台insert数据库中文乱码,即insert中文出现???,但是本地windows环境测试正常,有以下三个地方的问题:
- project的编码格式和linux生产环境有差异,建议同意修改为utf-8,具体修改方法参考自己使用的编辑器
- tomcat编码格式和项目不同
- 数据库设置的编码格式的问题
下面进行详细描述:
1.project的编码格式和linux生产环境有差异,建议同意修改为utf-8,具体修改方法参考自己使用的编辑器
解决方案:myeclipse--->右键项目--->Properties--->Resource--->Text file encoding----->选择utf-8---->apply--->ok
2.tomcat编码格式和项目不同
解决方案:
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8"/>
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" URIEncoding="UTF-8"/>
3.数据库设置的编码格式的问题
①先打开 运行--->cmd--->net stop MySQL 关闭MySQL的服务
②C:\Program Files (x86)\MySQL\MySQL Server 5.5\my.ini
linux系统里面,打开/alidata/server/mysql-5.6.21/my.cnf文件,在[mysqld]字段里加入
port = 3306
collation_server = utf8_general_ci
character_set_server = utf8
然后重启mysql
③打开MySQL的命令行界面,输入密码进入后
执行
show variables like 'character%';
该语句,显示如下即表示设置成功
题主只是一个入门的小学生,希望大家多多指教!如果该帖子确实能解决您的问题,望多多留言,谢谢!

在Java Web项目中,当在Linux生产环境中插入数据库时出现中文乱码问题,而在本地Windows环境下正常。主要涉及项目编码格式、Tomcat编码格式和数据库设置三个方面。解决方案包括将项目编码格式统一改为UTF-8,调整Tomcat配置,以及修改MySQL数据库的编码设置。通过修改my.cnf文件并在[mysqld]字段中添加相应配置,重启MySQL服务,然后验证数据库编码设置是否成功。
1136

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



