hibernate类型转换小问题

eceg 2010-03-25 03:19:19

String hql="select count(id) FROM User as u where u.emailname=?";
Query query=super.getSession().createQuery(hql);
query.setString(0, name);
List list=query.list();
int i=(Integer)list.get(0); //类型转换出错


调用save方法插入时候,没有错 ,数据库是mysql的,字段id 自增 int(11)
...全文
96 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
eceg 2010-03-25
  • 打赏
  • 举报
回复
谢谢3楼
bayougeng 2010-03-25
  • 打赏
  • 举报
回复
你debug一下,看看返回值的类型不就知道怎么转了么?
再说抛异常的时候也会告诉你xxxxx不能被转换成Integer吧。
BearKin 2010-03-25
  • 打赏
  • 举报
回复
[Quote=引用楼主 eceg 的回复:]
Java code

String hql="select count(id) FROM User as u where u.emailname=?";
Query query=super.getSession().createQuery(hql);
query.setString(0, name);
List list=q……
[/Quote]

你的id返回类型是Integer 但没人告诉你你用count函数返回的DD也是Integer啊
看看用Long能接不 不能的话换BigDecimal 如果想转成Integer的话 你也可以通过使用
Integer.parseInt(list.get(0).toString);
  • 打赏
  • 举报
回复
分开赋值%
wn_1985 2010-03-25
  • 打赏
  • 举报
回复
List<Integer> list=query.list();
int i=list.get(0);

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧