java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Long
Query query = getSession().createQuery("select e.provinceid from Province e where e.sid=?");
query.setParameter(0, pid);
String father =(String)query.uniqueResult();
System.out.println(father);
这是model的属性
private String provinceid; //这个是string类型啊
Query query = getSession().createQuery("select e.provinceid from Province e where e.sid=?");
query.setParameter(0, pid);
String father =(String)query.uniqueResult();
System.out.println(father);
这是model的属性
private String provinceid; //这个是string类型啊
解决方案 »
- 关于InvocationTargetException的问题
- eclipse 的remote配置?在weblogic9.2中?
- log4j的对象实例怎么用?请教大家。
- 如何搭建jsp的空间
- 我想学习软件开发
- 各位,请帮忙啊,急!急!急!急!急!(Struts 连接数据库配置server.xml的问题)郁闷好几天了,如过能帮助,我把分都给他!
- 如何自动根据文件扩展名知道文件的MIME类型?
- 新手的JBUILD CRACK 问题, 还有EJB 问题, 帮我们大虾!!!!
- sos: How to JSP to access the EJB
- 无法初始化org.springframework.orm.hibernate4.LocalSessionFactoryBuilder
- hibernate懒加载问题
- 有没有前台解析不规则的html文件,解析为规则的xhtml的库或者方法
String father =(String)query.uniqueResult();
但是你现在的 request.getAttribute("t"); 返回的是long型的 long型与String类型 就不存在父子关系 所以你试图(Stirng)强转的时候 会报错 can not cast to String from long
你的uniqueResult()返回的是一个Object(其实就是一个持久化对象)
你怎么给他转成String,
如果你想把它转成String用toString()不是更好些么?
Number num = (Number) query.uniqueResult();
int ret = num.intValue();
Number num = (Number) query.uniqueResult();
int ret = num.intValue();
嗯还是不行 query.setParameter(0, pid);我觉得是这个pid我传入的是一个字符串 是不这里的问题啊
Number num = (Number) query.uniqueResult();
int ret = num.intValue();
嗯还是不行 query.setParameter(0, pid);我觉得是这个pid我传入的是一个字符串 是不这里的问题啊
就是这个问题 解决了
public String findProvinceFather(String sid) {
long l = Long.parseLong(sid);
Query query = getSession().createQuery("select e.provinceid from Province e where e.sid=?");
query.setParameter(0, l);
query.uniqueResult();
}
ok
public String findProvinceFather(String sid) {
long l = Long.parseLong(sid);
Query query = getSession().createQuery("select e.provinceid from Province e where e.sid=?");
query.setParameter(0, l);
query.uniqueResult();
}
ok
楼上的代码很粗糙,这里是会出问题的,判空都没进行