日期:2014-05-20  浏览次数:20733 次

hibernate 类型转换错误
public User
{
private String name;
private BigDecimal mark; //java.math.BigDecimal


public User(String name ,BigDecimal mark)
{
 this.name = name;
 this.mark = mark;

}
//get set 省略
}


执行查询的时候,
hql = "select new User('姓名',0) from xxxxxxxx"


提示数据类型转换错误,该怎么写这个hql语句啊。 hql = "select new User('姓名',new java.math.BigDecimal(0) )from xxxxxxxx" 也不行




------解决方案--------------------
from User where name='姓名' and mark=0

试试看
------解决方案--------------------
hql = "from xxxxxxxx"
hql没有select,跟SQL的区别是HQL从FROM开始
------解决方案--------------------
new java.math.BigDecimal("0")

这样看看
------解决方案--------------------
你这样查询的话,返回值是一个User对象,而不是一个list;
所以,你必须要传入该对象的ID,否则查询会报错。