关于异常 No Dialect mapping for JDBC type 记载
来源:互联网 发布:怎么制作淘宝店铺标志 编辑:程序博客网 时间:2024/06/06 00:24
引发该异常的原因:hibernate对于有些数据类型不识别
解决方案:自定义一个hibernate.dialect方言
package com.yourcompany.util ; import java.sql.Types; import org.hibernate.Hibernate; import org.hibernate.dialect.MySQL5Dialect; public class CustomDialect extends MySQL5Dialect { public CustomDialect() { super(); registerHibernateType(Types.DECIMAL, Hibernate.BIG_DECIMAL.getName()); registerHibernateType(-1, Hibernate.STRING.getName()); } }
然后在hibernate配置文件中配置
<property name="hibernate.dialect"> com.yourcompany.CustomDialect </property>
说明: 如果你的数据库是mysql,而又用了decimal类型,报错应该是 No Dialect mapping for JDBC type: 3 . 注意这个3,
它说明hibernate不能将这种数据类型映射到你的java类中. 就需要在自定义的方言中用到:
registerHibernateType(Types.DECIMAL, Hibernate.BIG_DECIMAL.getName());
如果你用了text数据类型,hibernate根本就不认识这种数据类型,所以会返回No Dialect mapping for JDBC type: -1
. 这样的话,就需要在方言中加入:
registerHibernateType(-1, Hibernate.STRING.getName());
这样之后问题就解决了。
- 关于异常 No Dialect mapping for JDBC type 记载
- 关于Hibernate异常:No Dialect mapping for JDBC type: -1
- No Dialect mapping for JDBC type: -1异常
- Hibernate中的No Dialect mapping for JDBC type: -1异常
- 关于“No Dialect mapping for JDBC type : ? ”的总结
- No Dialect mapping for JDBC type
- No Dialect mapping for JDBC type: -1
- No Dialect mapping for JDBC type: -1
- No Dialect mapping for JDBC type解决方法
- No Dialect mapping for JDBC type: -1
- No Dialect mapping for JDBC type: -1
- No Dialect mapping for JDBC type: -1
- No Dialect mapping for JDBC type: -1
- No Dialect mapping for JDBC Type:-9
- no dialect mapping for jdbc type:-9
- No Dialect mapping for JDBC type: -1
- No Dialect mapping for JDBC type :-9
- No Dialect mapping for JDBC type 0
- 我们项目中对Ext.gird.EditorGridPanel是如何添加一行,删除一行的
- CAGR
- java多线程总结二:后台线程(守护线程)
- android输入流转换为Bitmap
- 清除空白行
- 关于异常 No Dialect mapping for JDBC type 记载
- java 编码实例分析(二)
- excel中计算两个日期之间的相差多少天
- 【转】水晶报表--公式、函数与运行时统计
- java中的单例模式
- PHP筛选法求质数。
- va_list、va_start、va_end
- linux 下screen命令
- 玩家的管理