您的位置:首页 > 其它

H​i​b​e​r​n​a​t​e​中​解​决​与​数​据​库​不​匹​配​字​段​方​法

2014-04-23 15:22 483 查看
ySQL数据库中有张表的字段是text,查询出来后对应的java类型是String,Dialect设置为org.hibernate.dialect.MySQLDialect

运行的时候报错:No Dialect mapping for JDBC type:-1
错误的原因是MySQL和java类型转换错误,解决方法如下:

.首先自己写一个class,继承org.hibernate.dialect.MySQLDialect

public class BlobMySQLDialect extends MySQLDialect {

 public BlobMySQLDialect() {

  super();

  registerHibernateType(Types.LONGNVARCHAR, Hibernate.TEXT.getName());

  registerHibernateType(-1, Hibernate.STRING.getName());

 registerHibernateType(Types.DECIMAL, Hibernate.BIG_DECIMAL.getName());

 }

}.

Dialect设置为:包名.BlobMySQLDialect

  <property name="hibernate.dialect" value="SqlServer2008Dialect" />
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: