`
longzhun
  • 浏览: 361225 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

No Dialect mapping for JDBC type: -1

阅读更多

No Dialect mapping for JDBC type: -1

原因:hibernate 方言不支持此类型,数据库表中有text类型的字段,而Hibernate在native查询中没有注册这个字段,因此发生这个错误

解决办法:

写一个类、修改hibernate配置文件。
写一个Dialect的子类,这里我 extends MySQL5Dialect类:

package com.jh.jcs.framework.utils;

import java.sql.Types;

import org.hibernate.dialect.MySQL5Dialect;

public class DialectForInkfish extends MySQL5Dialect{

 public DialectForInkfish() { 
        super(); 
        registerHibernateType(Types.LONGVARCHAR, 65535, "text"); 
       // registerHibernateType  (Types.DECIMAL,Hibernate.BIG_DECIMAL.getName());   
 //registerHibernateType(-1, Hibernate.STRING.getName());    

    } 

}

 
修改config.properties文件:

hibernate.dialect=com.jh.jcs.framework.utils.DialectForInkfish

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics