1 首先我使用的是CENTOS8.0操作系统。
2 我使用的是mysql8.0.18数据库
3 我使用的是 apache-tomcat-9.0.29
4 JDK使用的是202源码版本
以上安装部署完毕之后发现,在数据库中是显示的文字是正常的,那么在web页面显示的文字就是乱码
通过百度之后发现各种修改最后未能解决。
通过自己的琢磨之后,通过修改如下地方解决。
1 修改系统的时区/时间以及硬件的时间同步。
timedatectl
查看时间,时区,格林威治时间
list-timezones 列出系统上支持的时区
set-timezone 设定时区
set-time 设置时间
set-btp 设置同步ntp
修改时区tzselect
修改时区为亚洲/中国/北京
2 修改tomgcat的server.xml如下
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8" sendReasonPhrase="true"/>
3 修改数据my.cnf如下:
[mysqld]
socket = /var/lib/mysql/mysql.sock
datadir=/var/lib/mysql
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
character-set-server=utf8
default-storage-engine=INNODB
user=mysql
skip-character-set-client-handshake
init_connect='SET NAMES utf8'
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
default-character-set = utf8
[mysql]
default-character-set = utf8
[mysql.server]
default-character-set = utf8
[client]
default-character-set = utf8
4 设置编码
vim /etc/profie
末尾添加如下
export LANG="zh_CN.UTF-8"
保存
执行source /etc/profile
重启数据库service mysqld restart
问题彻底解决。