Springboot2.0에서 Hibernate가 기본적으로 만든 mysql 테이블 문자 세트는 UTF8이 아닙니다.

597 단어 sprintboot
머신러닝 플랫폼을 만들 때 사용하는springboot+jpa는 @Entity를 통해 생성된 테이블입니다. 문자 집합은latin1이고 엔진은MyISAM입니다. 테이블에 저장된 중국어 난코드가 발생합니다. 아래 코드만 있으면 생성된 테이블 엔진은 InnoDB이고 문자 집합은utf8입니다.
import org.hibernate.dialect.MySQL5InnoDBDialect;

public class MysqlConfig extends MySQL5InnoDBDialect {
    @Override
    public String getTableTypeString() {
        return " ENGINE=InnoDB DEFAULT CHARSET=utf8";
    }
}

yml에서 구성
spring:
  jpa:
    show-sql: true
    hibernate:
      ddl-auto: update
    database-platform: com.sf.clpp.ccp.ml.web.common.MysqlConfig #     

좋은 웹페이지 즐겨찾기