我写代码用的是UTF8编码,但是Linux用yum安装的时候默认的编码是Latin1(ISO-8859-1的别名),所以用JDBC查数据就算是语句一点都没错还是查不到数据,这就是因为代码里面没错,但是查询的时候由于编码不一致,所查询的那一条语句就不是我们所能预见的了,最最有效的解决办法就是将MySQL的默认编码也转换成UTF8,转换的方式此处不再赘述,大家自行查找答案。
但是这个时候有一个问题,那就是将编码改变成UTF8格式之后,数据库里面的中文全部乱了,这是为什么?难道是因为数据库里面设置成UTF8后不支持中文吗?答案肯定不是这样的,这还是因为编码问题,虽然我们将数据库里面的默认编码改成了UTF8,但是你在创建的表已经用了Latin1编码,所以解决办法就是将整个数据库全部删掉,然后重新建数据库和数据表,这个时候数据才会从乱码恢复!