私のSpring MVCプロジェクトでは、Hibernateを使用しており、Criteria APIを使用して、Group BYおよびOrder BY句を適用しています。クエリはDBで正常に実行され、結果も得られますが、オブジェクトの配列です--
これがCriteria APIのコードです
Criteria criteria = session.createCriteria(DashboardSubindicatorSubmission.class, "DashboardSubindicatorSubmission")
.setProjection(Projections.projectionList()
.add(Projections.sum("InputValue").as("InputValue"))
.add(Projections.groupProperty("fkAccademicYearId"))
.add(Projections.groupProperty("fkAssessmentPlanID"))
.add(Projections.groupProperty("fkSubindicatorID"))
.add(Projections.groupProperty("InputTitle")))
.addOrder(Order.asc("fkAccademicYearId"))
.addOrder(Order.asc("fkAssessmentPlanID"))
.addOrder(Order.asc("InputTitle"));
List<DashboardSubindicatorSubmission> dashboardSubindicatorSubmissionList = (List<DashboardSubindicatorSubmission>)criteria.list();
session.flush();
transaction.commit();
return dashboardSubindicatorSubmissionList;
にキャストcriteria.list()
していますが、コントローラーでList<DashboardSubindicatorSubmission>
実行しようとすると例外が発生します。dashboardSubindicatorSubmissionList.get(i)
java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to mkcl.accreditation.model.DashboardSubindicatorSubmission
List<DashboardSubindicatorSubmission>
私はそれを知っていますが、まだそのリストにキャストしていますが、それが私にオブジェクトを返すので、私object[]
ができない理由です。(間違っていたら訂正してください)dashboardSubindicatorSubmissionList.get(i)
DashboardSubindicatorSubmission
DashboardSubindicatorSubmission
では、どうすれば結果をクラスのリストに変換できますか? この場合、 setResultTransformer() は役に立ちますか?