mysql text类型字段 中文页面显示乱码

图片说明
图片说明
图片说明

自己本地tomcat启动是正常的 页面没有乱码

发布服务器以后 中文都是乱码

下面是我本地的图片
图片说明

CREATE TABLE 时指定 utf8mb4 编码

从目前来看极有可能是你发布的服务器的tomcat配置问题。因为本地的tomcat,特别是开发环境,默认了utf编码,而发布环境安装的tomcat可能没有经过任何配置。

先使用sql查询出需要导出的内容,将longtext类型使用cast转化成char类型SELECT company_id, wechat_mp_appid

set names utf8;

首先在mysql命令界面输入show variables like "char%"看一下你是否设置为utf8,如果没设置可以在建表时后跟charset=utf8,或者在ini配置文件里改,一劳永逸,
如果是utf8还乱码的话,请查看tomcat是否配置默认为utf8,具体配置在myeclipse的preference里进行

看看本地字符集合服务器端是否一致

编辑字段,在后面的 整理 选择utf8_general_ci

凡是乱码,必然是编码不一致的问题。

sql查询的字符集与显示的字符集不一致

在配置文件那里设置utf-8

names =utf8

这个是服务器上面的编码和数据库的不一致导致的这种情况,需要修改服务器上面的编码,可以在页面上修改HTML的编码

本地编码和服务器编码是否一样

你的情况我遇到过, 你看看是不是你tomcat配置文件中 少了URIEncoding="UTF-8" 这个编码设置,因为在本地的tomcat中他会自带这个配置,但在linux环境中并没有这个配置,需要自己手动加上

造成这种乱码的现象,应该是编码不一致的问题

mysql编码,java程序编码,还有html编码,整个系统的编码保持一致。

检查
开发环境字符集
数据库设置字符集
数据库服务器字符集
这3个是否一致

tomcat配置问题。因为本地的tomcat,特别是开发环境,默认了utf编码,而发布环境安装的tomcat可能没有经过任何配置。

在执行插入的时候,编码不正确,重新设置一下就行了

导入时设置编码模式 mysql -uroot -p123456 --default-character-set=utf8 databasename < /root/databasename.sql

编码不一致导致的问题,要多点排查编码

tomcat里面貌似也能设置编码

在数据库和后端使用的框架中,设置编码格式

@RequestMapping(value="/",produces="text/html; charset=UTF-8",method=RequestMethod.GET)
spring 中配置下