Java-解决实现JPA的hibernate自动建表的编码问题
2017-03-21 19:44
696 查看
继续这一个系列,这次讲JPA编码问题的解决。
本系列:
(一)J2EE项目系列(三)–Spring Data JPA+Spring+SpringMVC+Maven快速开发(1)项目架构
(二) J2EE项目系列(三)–Spring Data JPA+Spring+SpringMVC+Maven快速开发(2)多个第三方服务端接入之云旺IM
hibernate自动建表的编码应该是数据默认的编码格式latin1_swedish_ci,所以我们直接自动建表,即使你给persistenceUnitName的持久单元设定了utf8,还是使用latin1编码的。
因为什么呢??因为你使用的hibernate方言问题,对应mysql的翻译的方言。
所以我们怎么做??
(1)继承MySQL5InnoDBDialect覆写方法:
像安卓的自定义控件一样,为了多样化的控件,我们需要自己去开发新控件,就是去使用继承的原理,覆写父类方法。
public class MySQL5DialectUTF8 extends MySQL5InnoDBDialect { @Override public String getTableTypeString() { return " ENGINE=InnoDB DEFAULT CHARSET=utf8"; } }
(2)在持久化单元引用这个被覆写的方言:
<!-- 使用MySQL方言 --> <property name="hibernate.dialect" value="com.ima.utils.MySQL5DialectUTF8"/>
源码下载:J2EE项目系列(三)–Spring Data JPA+Spring+SpringMVC+Maven快速开发(3)解决hibernate自动建表的编码问题
好了,J2EE项目系列(三)–Spring Data JPA+Spring+SpringMVC+Maven快速开发(3)解决hibernate自动建表的编码问题讲完了。本博客是这个系列的第三篇,所以讲得一些细节坑。另外,这个系列还有一些我在外包项目过程中做的优化,我会尽快出完给大家,分享经验给大家。欢迎在下面指出错误,共同学习!!你的点赞是对我最好的支持!!
更多内容,可以访问JackFrost的博客
相关文章推荐
- Spring3.0 JPA(hibernate3.6实现)整合问题之:java.lang.NoSuchMethodError: javax.persistence.spi.PersistenceUni
- 动态规划解决矩阵链乘问题的java编码实现
- 【JAVAWEB学习笔记】24_filter实现自动登录和解决全局的编码问题
- Spring3.0 JPA(hibernate3.6实现)整合问题之:java.lang.NoSuchMethodError: javax.persistence.spi.PersistenceUnitInfo.getValidationMode()Lja
- mybatis和JPA实现乐观锁解决并发问题-阿里巴巴JAVA开发手册详细解读
- 动态规划解决矩阵链乘问题的java编码实现
- Java工程Properties配置文件注释中文,会自动转换为其他编码方式问题解决
- 解决Hibernate中自动生成的findByProperty函数无法工作的问题-java SSH整合系列
- Java编码问题解决方案大揭密
- 一步一步SharePoint 2007之二十一:解决实现注册用户后,自动具备访问网站的权限的问题(3)——创建用户
- 一步一步SharePoint 2007之二十:解决实现注册用户后,自动具备访问网站的权限的问题(2)——配置Role
- 一步一步SharePoint 2007之十九:解决实现注册用户后,自动具备访问网站的权限的问题(1)——配置Provider
- java实现插入mysql二进制文件,blob类型,遇到问题及解决办法
- 使用Hibernate轻松解决java中date与datetime类型不兼容的问题
- Java编码问题解决方案大揭密
- ant 的ftp任务使用,实现自动备份等,解决中文问题
- Proxool+hibernate+spring时事务自动回滚导致无法提交的问题解决
- 用hibernate进行MYSQL数据存储时遇到的中文编码问题及其解决方
- 关于“解决实现注册用户后,自动具备访问网站的权限的问题”文章中配置出现找不到角色的问题的解决办法
- 一步一步SharePoint 2007之二十一:解决实现注册用户后,自动具备访问网站的权限的问题(3)——创建用户