您好,欢迎访问一九零五行业门户网

Hibernate使用jdbc只能获取单字符问题

在hibernate项目中提供jdbc接口时,查询数据库char字段的数据只能得到第一个字符的问题,解决方案代码如下:
在hibernate项目中提供jdbc接口时,,查询数据库char字段的数据只能得到第一个字符的问题,解决方案代码如下:
package com.newer.common;
import java.sql.types;
import org.hibernate.hibernate;
import org.hibernate.dialect.mysqldialect;
/**
 * 此类用于解决数据库 char字段问题(mysql)
* 因使用hibernate内置提供的sql语句查询接口会给字符串当char处理,
 * 所以编写此类覆盖内置的mmysqldialect
* 给mysql的char字段修饰为string
 * @author rsun
 * 2012-2-26下午03:53:55
 */
public class mmysqldialect extends mysqldialect{
public mmysqldialect() {
super();
registerhibernatetype(types.decimal, hibernate.big_integer.getname());
registerhibernatetype(types.char, hibernate.string.getname());
registerhibernatetype(types.nvarchar, hibernate.string.getname());
registerhibernatetype(types.longnvarchar, hibernate.string.getname());
}
}
总结:
1. 当前是解决mysql的问题,对应其它数据库只需实现相应的接口即可。
2. 配置${dialect}需引用上面的类。
其它类似信息

推荐信息