Rumah > Java > javaTutorial > Bagaimana untuk Mengembalikan Objek Tersuai dalam Data Spring JPA GROUP BY Queries?

Bagaimana untuk Mengembalikan Objek Tersuai dalam Data Spring JPA GROUP BY Queries?

Mary-Kate Olsen
Lepaskan: 2024-11-01 14:30:02
asal
530 orang telah melayarinya

How to Return Custom Objects in Spring Data JPA GROUP BY Queries?

Pemulangan Objek Tersuai dalam Spring Data JPA GROUP BY Queries

Spring Data JPA menawarkan cara yang mudah untuk melaksanakan operasi pangkalan data menggunakan JPQL (Java Persistence Bahasa Pertanyaan). Apabila menggunakan pertanyaan JPQL tersuai dengan klausa GROUP BY, anda mungkin mahu mengembalikan objek tersuai dan bukannya tatasusunan hasil SQL terbina.

JPQL Solution

  1. Tentukan kelas kacang mudah:
<code class="java">public class SurveyAnswerStatistics {
    private String answer;
    private Long count;
    ... // getters and setters
}</code>
Salin selepas log masuk
  1. Kembalikan contoh kacang daripada kaedah repositori:
<code class="java">@Query("SELECT new com.path.to.SurveyAnswerStatistics(v.answer, COUNT(v)) FROM Survey v GROUP BY v.answer")
public List<SurveyAnswerStatistics> findSurveyCount();</code>
Salin selepas log masuk

Penyelesaian Pertanyaan Asli

Untuk pertanyaan asli, antara muka Tayangan Data Spring digunakan dan bukannya kelas kacang:

  1. Tentukan antara muka unjuran:
<code class="java">public interface SurveyAnswerStatistics {
    String getAnswer();
    int getCnt();
    ... // additional getters
}</code>
Salin selepas log masuk
  1. Kembalikan sifat yang diunjurkan daripada pertanyaan:
<code class="java">@Query(nativeQuery = true, value = "SELECT v.answer AS answer, COUNT(v) AS cnt FROM Survey v GROUP BY v.answer")
public List<SurveyAnswerStatistics> findSurveyCount();</code>
Salin selepas log masuk

Nota Penting

  • Gunakan laluan yang layak sepenuhnya ke kelas kacang.
  • Panggil pembina kacang menggunakan kata kunci baharu.
  • Lepaskan atribut dalam susunan yang sama seperti parameter pembina kacang.
  • Pastikan pertanyaan adalah pertanyaan JPA yang sah.
  • Gunakan kata kunci SQL AS untuk pemetaan yang tidak jelas apabila menggunakan pertanyaan asli.

Atas ialah kandungan terperinci Bagaimana untuk Mengembalikan Objek Tersuai dalam Data Spring JPA GROUP BY Queries?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan