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

原创 2015年07月10日 17:55:21

使用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 });  
}  


版权声明:本文为博主原创文章,未经博主允许不得转载。

解决继承HibernateDaoSupport用getHibernateTemplate()无法更新的问题

1getHibernateTemplate().update()只能以实体类为参数,不能传入HQL语句,而实体类是要从HQL查询出来的持久化对象,而不能是new出来得对象 2可以用Session,然...
  • u013246459
  • u013246459
  • 2017年05月25日 20:27
  • 260

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

spring中使用HibernateTemplate或HibernateDaoSupport报类型转换错误。数据类型一定要与实体类的字段类型一致。...
  • aitangyong
  • aitangyong
  • 2015年07月10日 17:55
  • 1098

HibernateTemplate的save方法不能保存

没有插入数据到数据库,但是又能通过get方法得到数据。说明你的操作只是在hibernate的缓存中进行,并没有实际操作数据库。 save方法后,手动执行一下getHibernateTemplate(...
  • ErErFei
  • ErErFei
  • 2014年07月03日 20:01
  • 2113

Spring4 集成 Hibernate3 使用 HibernateTemplate 和使用 HibernateDaoSupport 操作对象

Spring4 集成 Hibernate3 使用 HibernateTemplate 和使用 HibernateDaoSupport 操作对象第一部分:使用 HibernateTemplate基本步骤...
  • lw_power
  • lw_power
  • 2016年05月06日 17:08
  • 3181

Spring 整合 Hibernate、声明式的事务管理、HibernateTemplate(HibernateDaoSupport)

一、在Spring 中 指定datasource    可以使用c3p0、dbcp
  • Troy__
  • Troy__
  • 2014年05月10日 11:19
  • 2641

Hibernate常见异常-无法转换为内部表示

Hibernate常见异常-无法转换为内部表示 java.sql.SQLException: 无法转换为内部表示     at oracle.jdbc.driver.DatabaseError...
  • fyqcdbdx
  • fyqcdbdx
  • 2011年10月27日 14:46
  • 3512

getHibernateTemplate().save(Object obj)不能保存数据的原因

原网页点击打开链接 最简洁概述: 你在hibernate.xml配置文件里加上 true 搞定   做项目过程中,在一个save()方法中不能把数据提交到数据库,而在后台打印的sql语句来...
  • lesaqiu
  • lesaqiu
  • 2015年08月10日 15:53
  • 1611

hibernateTemplate以及spring中的hibernateDaosupport的配置

hibernateTemplate org.hibernate.dialect.MySQLDialect true tru...
  • a15134673751
  • a15134673751
  • 2017年05月12日 09:15
  • 415

Spring HibernateTemplate与HibernateDaoSupport对比

HibernateTemplate与HibernateDaoSupport两者都是spring整合hibernate提供的模板技术
  • waysoflife
  • waysoflife
  • 2014年04月06日 02:10
  • 1904

getHibernateTemplate().update()方法更新不了解决办法

换成以下代码就可以了,貌似是没提交事物,但是具体原因不清楚 Session session = getHibernateTemplate().getSessionFactory().openSess...
  • bruse1990
  • bruse1990
  • 2014年06月06日 23:48
  • 659
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:spring中使用HibernateTemplate或HibernateDaoSupport报类型转换错误
举报原因:
原因补充:

(最多只允许输入30个字)