hibernate 类型转换

hibernate 执行SQL语句字符串常量类型变成了 character

解决办法

1重写Dialect

public  class  SQLServerDialect  extends  org.hibernate.dialect.SQLServerDialect{
     public  SQLServerDialect() {
         super ();
         //very important, mapping char(n) to String
         registerHibernateType(Types.CHAR, Hibernate.STRING.getName());
     }
}
 
2
this.getSession() .createSQLQuery("select id,name,state from tb").
addScalar("id", Hibernate.STRING).
addScalar("name", Hibernate.STRING).
addScalar("state", Hibernate.STRING).list();
 
3
select id,name,cast(state as varchar(2)) from tb

猜你喜欢

转载自www.cnblogs.com/jentary/p/11422223.html