您的位置:首页 > 移动开发

org.hibernate.MappingException: No Dialect mapping for JDBC type: -1

2013-09-24 17:56 489 查看
使用原生的SQL查询时,如果你用了text数据类型,Hibernate根本就不认识这种数据类型,所以会返回No Dialect mapping for JDBC type:-1,这样的话,就需要自定义方言。

另:如果mysql数据库类型是char,在使用原生SQL查询时,发现结果只取一位字符。解决方法继承MYSQL的dialect,在Hibernate中将CHAR(N)都注册为String类型

import java.sql.Types;

import org.hibernate.Hibernate;
import org.hibernate.dialect.MySQLDialect;

public class MySQL5Dialect extends MySQLDialect {

public MySQL5Dialect() {
registerHibernateType(Types.LONGVARCHAR, Hibernate.TEXT.getName());
registerHibernateType(Types.CHAR, Hibernate.STRING.getName());
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  No Dialect mapping f
相关文章推荐