1、背景:
连接数据库的url如下所示,发现mysql插入中文会显示乱码
spring.datasource.url=jdbc:mysql://localhost:3306/mybatis_plus?serverTimezone=GMT%2B8
于是在连接数据库的url后面跟上useUnicode=true&characterEncoding=UTF-8,发现报错java.sql.SQLException: No timezone mapping entry for ‘GMT+8ï¼’
jdbc:mysql://localhost:3306/mybatis_plus?serverTimezone=GMT%2B8?useUnicode=true&characterEncoding=utf8&useSSL=false
2、网上解决方案五花八门:
比如GMT%2B8改为GMT+8或者Asia/Shanghai、serverTimezone改为serverTimeZone,都无法解决问题。
3、我的最终解决方案,如下:
spring.datasource.url=jdbc:mysql://localhost:3306/mybatis_plus?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&useSSL=false