【发布时间】:2013-12-27 12:11:17
【问题描述】:
我想从数据库中获取值,在我的情况下,我使用List 从数据库中获取值,但我收到了这个错误
Exception in thread "main" java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to id.co.bni.switcherservice.model.SwitcherServiceSource
at id.co.bni.switcherservice.controller.SwitcherServiceController.LoadData(SwitcherServiceController.java:48)
at id.co.bni.switcherservice.controller.SwitcherServiceController.main(SwitcherServiceController.java:62)
这是我的代码
Query LoadSource = session_source.createQuery("select CLIENT,SERVICE,SERVICE_TYPE,PROVIDER_CODE,COUNT(*) FROM SwitcherServiceSource" +
" where TIMESTAMP between :awal and :akhir" +
" and PROVIDER_CODE is not null group by CLIENT,SERVICE,SERVICE_TYPE,PROVIDER_CODE order by CLIENT,SERVICE,SERVICE_TYPE,PROVIDER_CODE");
LoadSource.setParameter("awal", fromDate);
LoadSource.setParameter("akhir", toDate);
List<SwitcherServiceSource> result_source = (List<SwitcherServiceSource>) LoadSource.list();
for(SwitcherServiceSource tes : result_source){
System.out.println(tes.getSERVICE());
}
任何帮助都会很高兴:)
@raffian,你的意思是这样吗??
List<Switcher> result = (List<Switcher>) LoadSource.list();
for(Switcher tes : result){
System.out.println(tes.getSERVICE());
}
【问题讨论】:
-
@raffian 这是一个休眠 API 方法。
-
每个选择查询都会出现这个问题吗?当从查询中检索到某些字段时,我吸收遵循 Anikit Kulkarni 提供的解决方案。当从查询中检索到整个字段时,这不会是一个问题 splatter_fadli
-
下面提供的答案 Gleb S 比公认的要好,imo stackoverflow.com/questions/20486641/…