[mysqld] character_set_server=utf8 [mysql] default_character_set=utf8 [client] port=3306 default_character_set=utf8
JPA自动创建表用UTF8(吐槽:配置方言居然是 database-platform,而不是熟悉的dialect,FUCK,折腾死我了!)
继承并覆写方法MySQL5InnoDBDialect为MySQL5DialectUTF8 :
public class MySQL5DialectUTF8 extends MySQL5InnoDBDialect { @Override public String getTableTypeString() { return " ENGINE=InnoDB DEFAULT CHARSET=utf8"; } }
然后配置:
spring.jpa.database-platform=xxx.MySQL5DialectUTF8 spring.datasource.url=jdbc:mysql://localhost:3306/db_petstore?useUnicode=yes&characterEncoding=UTF-8