我正在使用JPA查询获取值并将结果放入列表中,但在服务类中,当我尝试将实体转换为DTO ..我得到错误“Ljava.lang.Object;无法投射到entityClass“ ...我试过forloop,forEach循环和迭代器出错。当我尝试获取第一个元素并将其放入entityclass对象时,我得到这个错误。[Ljava.lang.Object;不能转换为entityClass
List<Dashboard> dashboard = (List<Dashboard>)dashboardRepository.findAll();
System.out.println("AllSolCount Length :------------------------------- "+dashboard.size());
List<DashboardDto> result = new ArrayList<DashboardDto>();
System.out.println("List Elements :----------------------------------- "+dashboard);
/*for(int i=0;i<dashboard.size();i++) {
**Dashboard obj = (Dashboard)dashboard.get(i); //error in this line I get**
DashboardDto dashboardDto = mapToDto(obj, DashboardDto.class, false);
result.add((DashboardDto) dashboardDto);
}
for (Dashboard obj : dashboard){
**DashboardDto dashboardDto = mapToDto(obj, DashboardDto.class, false);// error in this line I get**
result.add((DashboardDto) dashboardDto);
}*/
Iterator itr = dashboard.iterator();
while(itr.hasNext()){
**Dashboard obj = (Dashboard) itr.next(); // error here itself**
}
return result;
线双*在哪里误差每个循环弹出的那些。请大家给点建议
在检索从DB我正在返回实体类的列表数据,但而不是实体类的列表我得到的Java对象列表..所以我想可能是一些配置或缺少某些东西。
对我来说它的自定义查询 @Query(value =“SELECT sol.offering,sol.state,COUNT(sol.id)FROM Solution sol GROUP BY sol.offering,sol.state“) public List findAll();
上有如此众多的非常类似的问题,都指向同一个原因(如https://stackoverflow.com/questions/27280818/java-lang-classcastexception-ljava-lang-object-cannot-be -cast-to-entity-usere)你看过那些吗? – fvu
[java.lang.ClassCastException:\ [Ljava.lang.Object;不能转换为entity.UserEntity](https://stackoverflow.com/questions/27280818/java-lang-classcastexception-ljava-lang-object-cannot-be-cast-to-entity-usere) – araknoid
答案在于你的截图。 您的存储库不会返回'List'。它返回一个'List