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时遇到的问题

使用注解为HibernateDaoSupport注入sessionFactory 分类: web SSH2013-04-24 22:27 902人阅读 评论(0) 收藏 举报 都知...
  • pyycsd
  • pyycsd
  • 2013年12月22日 18:52
  • 1184

Spring使用HibernateDaoSupport、HibernateTemplate和JdbcTemplate实现CURD

spring提供三种方式操作数据库

使用HibernateTemplate对数据库查询count时出现的类型转换的异常

在使用HibernateTemplate对数据库中的数据求count的时候

Spring的HibernateDaoSupport DaoSupport用HibernateTemplate,JdbcTemplate详解

一个spring和Hibernate访问Dao,还是蛮多问题需要解决的。首先就是HibernateDaoSupport和 HibernateTemplate的选择问题。整理了一下大家的资料和自己的总结...

spring的HibernateDaoSupport以及HibernateTemplate和jdbcTemplate详解

spring提供访问数据库的有三种方式: HibernateDaoSupport,HibernateTemplate(推荐使用),jdbcTemplateHibernateTemplate:org.s...

Spring整合hibernate:HibernateTemplate和HibernateDaoSupport实现数据库操作

HibernateTemplate:(主要采用spring注入) 其中实现类的配置如下: @Component("userDAOImpl") public class UserDAOImpl impl...

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

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

spring的HibernateDaoSupport、HibernateTemplate、jdbcTemplate的区别

spring提供访问数据库的有三种方式: HibernateDaoSupport,HibernateTemplate(推荐使用),jdbcTemplate          HibernateTe...

HibernateTemplate和HibernateDaoSupport(spring注入问题)

HibernateTemplate     HibernateTemplate是Spring提供的一个就Hibernate访问持久层技术而言、支持Dao组件的一个工具。HibernateTemp...

Spring整合Hibernate,不用HibernateDaoSupport与HibernateTemplate而用Hibernate自己的api分析说明

Spring整合Hibernate时,主要做了两件事:提供事务级session和声明式的事务控制。 在较早的Hibernate中,对于session的管理一般是one-session-per-ope...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:spring中使用HibernateTemplate或HibernateDaoSupport报类型转换错误
举报原因:
原因补充:

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