aty

虽有嘉肴,弗食,不知其旨也;虽有至道,弗学,不知其善也。是故学然后知不足,教然后知困。知不足,然后能自反也;知困,然后能自强也。...

spring中使用HibernateTemplate或HibernateDaoSupport报类型转换错误

使用spring的HibernateDaoSupport的时候,报错如下:

java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Integer
at org.hibernate.type.IntegerType.set(IntegerType.java:64)
at org.hibernate.type.NullableType.nullSafeSet(NullableType.java:154)
at org.hibernate.type.NullableType.nullSafeSet(NullableType.java:136)

实体类如下:

public class User
{  
    private int id;  
	
    private String name;  
  
    public int getId()
	{  
        return id;  
    }  
    public void setId(int id)
	{  
        this.id = id;  
    }  
    public String getName()
	{  
        return name;  
    }  
    public void setName(String name)
	{  
        this.name = name;  
    }  
}


dao层的代码如下:

public void select(String id)
{  
    List result = this.getHibernateTemplate().find("from User where id=?",  
                new Object[] { id });  
}

错误原因是:实体类中User类的id属性是Integer类型的,但是传递的查询条件id是String类型的。将string改成int类型,错误解决。

public void select(int id)
{  
    List result = this.getHibernateTemplate().find("from User where id=?",  
            new Object[] { id });  
}  


阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/aitangyong/article/details/46833681
文章标签: HibernateDaoSupport
个人分类: hibernate
上一篇javascript真的是异步的吗?且看setTimeout的实现原理以及setTimeout(0)的使用场景
下一篇javascript编程中一种常见的代码坏味道:Pyramid of doom(金字塔厄运)
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭