MySQLFabric连接的编码问题

今天解决的一个小问题。最终的解决方案很简单,主要是讲一下解决问题的思路。

测试人员在服务器上测试,页面提交的中文内容存入数据库中以后,是乱码。
开发人员在本机上测试,没有问题。

服务器上使用的是MysqlFabric配置的集群,共有3台MySQL服务器。开发人员本地使用的是单机的MySQL。

首先,测试是不是服务器上的MySQL的配置问题。
使用MySql的客户端连接到服务器上的MySQL,插入中文,没有问题。这说明数据库本身是能够支持中文的。

然后,测试是不是页面提交的时候产生的乱码。
以调试的方式启动本地的Web应用程序,页面提交的时候从服务器端得到上传的内容,检查没有乱码。再检查配置文件,使用了Spring的CharacterEncodingFilter,进行了转码,所以应该也没有问题。

持久化的过程中的问题。编写JUnit代码,分别使用本地的连接和服务器上使用的连接来插入中文数据。本地没有乱码,服务器上有乱码。在这个写入数据库的过程中,差别就是本地连接使用的是mysql的url<jdbc:mysql://localhost:3340/pms?useUnicode=true&characterEncoding=UTF-8>,在连接服务器上的数据库采用的是MysqlFabric的url<jdbc:mysql:fabric://10.8.48.234:32274/pms?fabricServerGroup=spfood-dev&fabricUsername=admin&fabricPassword=admin123#>。在前一个url中指定了使用Unicode和使用UTF-8的编码,后一个url中没有指定。

查了一下MysqlFabric的资料,没有说明是否可以添加这样的参数。只有自行实验。添加上参数之后,中文乱码的问题就消失了。

转载于:https://www.cnblogs.com/afrag/p/6180295.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值