用hibernate保存某个对象时,报错java.lang.ClassCastException: java.lang.String,求解决
java.lang.ClassCastException:java.lang.Stringnet.sf.hibernate.type.TimestampType.equa...
java.lang.ClassCastException: java.lang.String
net.sf.hibernate.type.TimestampType.equals(TimestampType.java:73)
net.sf.hibernate.type.AbstractType.isDirty(AbstractType.java:56)
net.sf.hibernate.type.TypeFactory.findDirty(TypeFactory.java:225)
net.sf.hibernate.persister.AbstractEntityPersister.findDirty(AbstractEntityPersister.java:275)
net.sf.hibernate.impl.SessionImpl.flushEntity(SessionImpl.java:2536)
net.sf.hibernate.impl.SessionImpl.flushEntities(SessionImpl.java:2486)
net.sf.hibernate.impl.SessionImpl.flushEverything(SessionImpl.java:2281)
net.sf.hibernate.impl.SessionImpl.flush(SessionImpl.java:2260)
net.sf.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:61)
org.springframework.orm.hibernate.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:491)
org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:495)
org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:468)
org.springframework.transaction.interceptor.TransactionAspectSupport.doCommitTransactionAfterReturning(TransactionAspectSupport.java 展开
net.sf.hibernate.type.TimestampType.equals(TimestampType.java:73)
net.sf.hibernate.type.AbstractType.isDirty(AbstractType.java:56)
net.sf.hibernate.type.TypeFactory.findDirty(TypeFactory.java:225)
net.sf.hibernate.persister.AbstractEntityPersister.findDirty(AbstractEntityPersister.java:275)
net.sf.hibernate.impl.SessionImpl.flushEntity(SessionImpl.java:2536)
net.sf.hibernate.impl.SessionImpl.flushEntities(SessionImpl.java:2486)
net.sf.hibernate.impl.SessionImpl.flushEverything(SessionImpl.java:2281)
net.sf.hibernate.impl.SessionImpl.flush(SessionImpl.java:2260)
net.sf.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:61)
org.springframework.orm.hibernate.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:491)
org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:495)
org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:468)
org.springframework.transaction.interceptor.TransactionAspectSupport.doCommitTransactionAfterReturning(TransactionAspectSupport.java 展开
4个回答
展开全部
类型转换异常 , 你的实体属性中肯定有时间类型, 这个时间类型在转换的时候出现的错误.
追问
以前确实是有,但是我把时间类型都改成了String类型的
实体类该属性如下:
private String findtime;
配置文件中属性如下:
数据库中该属性如下:
FINDTIME VARCHAR2(30) not null
追答
改了以后 有没有重启服务呀!
建议 打断点调试下 , 看下错误具体出在哪行代码, 然后在做处理.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
type="java.lang.String" 你再试试
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你看看数据库里有类型和hibernate里的类型是不是一至,如果是hibernate2还需要看看和xml中的是否一至仔细些,这是类型转换的问题
更多追问追答
追问
恩,我就是用的hibernate2 ,这个类型我都是让他自动匹配的,自己没设置,
追答
检查一下吧,这个错误很明确,有对象到String转换出的问题
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
类转换异常
更多追问追答
追问
那该则么办呢,求帮助!
追答
TimestampType.java:73 这段代码copy出来看下
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询