2016-05-05 70 views

回答

0

要創建一個對象從查詢首先你必須創建一個你想要得到的字段的一類,例如:

package com.my.package; 

public class MyObject { 

    private String fieldOne; 
    private String fieldTwo; 

    public MyObject(String fieldOne, String fieldTwo) { 
     this.fieldOne = fieldOne; 
     this.fieldTwo = fieldTwo; 
    } 

    // Other methods... 
} 

然後你jpql查詢這些特定領域會是什麼樣子:

SELECT new com.my.package.MyObject(t.fieldOne, t.fieldTwo) FROM MyTable t 

您可以使用@Query註解這樣使用它在你的倉庫:

@Query("SELECT new com.my.package.MyObject(t.fieldOne, t.fieldTwo) FROM MyTable t") 
List<MyObject> findMyObjects(); 

或者使用EntityManager

EntityManager entityManager = ...; 

entityManager 
     .createQuery("SELECT new com.my.package.MyObject(t.fieldOne, t.fieldTwo) FROM MyTable t", MyObject.class) 
     .getResultList(); 
+0

謝謝你,你給我從建設什麼查詢返回的對象更廣泛的方式,我需要做的這_「選擇新的列表(t.fieldOne,t.fieldTwo) FROM MyTable t「_ – saadoune