各位好
因為之前使用Hibernate一次select多個join在一起的table
其回傳的List 結構是 DTO陣列 在 row 之前,可是在JPA中是顛倒的
也就是List 結構是 row 在 DTO陣列 之前
我的範例程式碼如下:
public List findBudgetJoinOthersAll() {
entityManager = JPAUtil.getEntityManagerFactory().createEntityManager();
Query query = entityManager
.createQuery("SELECT b_, by_, bf_, br_, u_ "
+ "FROM Budget b_, Budgetyear by_, Budgetfield bf_, Branch br_, User u_ "
+ "where b_.byid = by_.byid and "
+ "b_.bfid = bf_.bfid and "
+ "b_.broid = br_.broid and " + "b_.uoid = u_.uoid");
List all = query.getResultList();
entityManager.close();
return all;
}
其回傳的結果像是(2個row各自包含5個DTO):
http://www.badongo.com/pic/12835448
我的目的是顛倒過來,先5個DTO的陣列,各陣列再各自有2個row
結果JPA回傳的結果跟我想要的相反
讓我必須要跑回圈做轉置...整個程式的複雜度變成n^2,實在很醜...
有辦法像Hibernate的addEntity那樣先DTO的List,下一層才是row嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 180.176.21.166
→
04/16 10:53, , 1F
04/16 10:53, 1F
※ 編輯: Laviathan 來自: 180.176.21.166 (04/16 11:36)