博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hibernate mysql utf8_hibernate建表默认为UTF-8编码
阅读量:1540 次
发布时间:2019-04-21

本文共 814 字,大约阅读时间需要 2 分钟。

一、问题:

hibernate自动建表的编码应该是数据默认的编码格式,一般也不是utf-8。所以想要建表默认的编码是UTF-8,应该怎么做呢?

二、解决方法:

拿mysql举例:

(一)、修改hibernate建表的方言

1、一般情况我们使用的mysql方言为:org.hibernate.dialect.MySQL5Dialect

默认返回的是

@OverridepublicString getTableTypeString() {return " ENGINE=InnoDB";

}

2、重写MySQL5InnoDBDialect类,覆盖getTableTypeString方法

packagecom.lqy.spring.hibernate.mysql;importorg.hibernate.dialect.MySQL5InnoDBDialect;public class MySQL5DialectUTF8 extendsMySQL5InnoDBDialect{

@OverridepublicString getTableTypeString() {return " ENGINE=InnoDB DEFAULT CHARSET=utf8";

}

}

3、方言配置使用我们重写的类,配置如下:

(1)Jpa数据库连接配置:

把默认的配置

修改成

(2)spring整合hibernate配置:

com.lqy.spring.hibernate.mysql.MySQL5DialectUTF8

update

false

false

com.lqy.spring.hibernate.mysql.MySQL5DialectUTF8

4、修改数据连接Url

jdbc.url=jdbc:mysql://192.168.1.11:3306/db?useUnicode=true&characterEncoding=UTF-8

转载地址:http://vrhdy.baihongyu.com/

你可能感兴趣的文章
springboot H2数据库持久化配置
查看>>
SpringCloud Consul 程序控制服务上下线
查看>>
Springboot 实现启动后动态修改配置
查看>>
车架号OCR识别算法
查看>>
车牌识别系统
查看>>
是时候给自己搞一台示波器了
查看>>
减小波形噪声的方法-示波器
查看>>
示波器探头介绍
查看>>
语义分割之IS-Triplet loss
查看>>
一句话总结YoloF
查看>>
语义分割之网络结构
查看>>
Ubuntu 16.04中安装OpenCV 2.4.11
查看>>
Ubuntu 通过SSH远程登录
查看>>
linux 文本编辑工具
查看>>
linux 常用命令小结
查看>>
Linux调试工具
查看>>
Android 手机开发板转化
查看>>
第一个linux 驱动
查看>>
Boss直聘招聘信息爬取
查看>>
OpenCV 纵向、横向拼接图片
查看>>