Rumah > Java > javaTutorial > Bagaimanakah Saya Boleh Menukar Keputusan Pertanyaan Asli kepada POJO dalam JPA?

Bagaimanakah Saya Boleh Menukar Keputusan Pertanyaan Asli kepada POJO dalam JPA?

DDD
Lepaskan: 2024-12-10 09:01:09
asal
802 orang telah melayarinya

How Can I Convert Native Query Results to POJOs in JPA?

JPA: Menukar Hasil Pertanyaan Asli kepada POJO

Dalam pertanyaan anda, anda menyatakan keperluan untuk menukar hasil pertanyaan asli kepada koleksi kelas POJO yang mengandungi lima bidang. Anda memikirkan sama ada JPA mempunyai cara langsung untuk menghantar keputusan ke senarai objek POJO.

Pemetaan Objek Tersuai Menggunakan Refleksi

Satu penyelesaian yang mungkin sebelum pengenalan JPA 2.1 adalah untuk memetakan hasil secara manual menggunakan refleksi. Ini melibatkan penentuan kaedah untuk mencipta pembina POJO dengan nombor dan jenis medan yang sama seperti hasil pertanyaan asli dan memetakan tatasusunan tuple yang dikembalikan oleh pertanyaan kepada pembina.

Menggunakan @SqlResultSetMapping dalam JPA 2.1

JPA 2.1 memperkenalkan @SqlResultSetMapping anotasi, yang membolehkan anda membuat pemetaan untuk set hasil dalam entiti atau fail XML. Pemetaan ini mentakrifkan kelas sasaran dan lajur dalam set hasil yang sepadan dengan sifatnya. Dengan menggunakan pemetaan ini, anda boleh mencipta objek Pertanyaan dan menentukan nama pemetaan untuk menghantar keputusan terus ke senarai objek POJO.

Pemetaan XML

Jika anda lebih suka menyimpan anotasi daripada kelas entiti, anda boleh menentukan pemetaan dalam fail META-INF/orm.xml. Ini melibatkan mencipta elemen pertanyaan asli bernama dengan atribut pemetaan set-hasil dan mentakrifkan elemen pemetaan set-hasil-sql dengan hasil-pembina yang menentukan pemetaan kelas sasaran dan nama lajur.

Entiti Dipetakan (JPA 2.0)

Sementara JPA 2.0 melakukannya tidak membenarkan pemetaan pertanyaan asli ke kelas POJO, ia menyokong pemetaan kepada entiti. Ini memerlukan POJO dianotasi sebagai entiti dan sifatnya dipetakan ke lajur pangkalan data.

Kesimpulan

Pendekatan yang anda pilih untuk memetakan hasil pertanyaan asli kepada Kelas POJO bergantung pada versi JPA yang anda gunakan dan keutamaan anda untuk anotasi atau konfigurasi XML. Pilihan yang dibentangkan menyediakan pelbagai tahap fleksibiliti dan kemudahan, membolehkan anda memilih yang paling sesuai dengan keperluan projek anda.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menukar Keputusan Pertanyaan Asli kepada POJO dalam JPA?. 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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan