Rumah > Java > javaTutorial > Bagaimanakah Saya Boleh Mengikat Objek Kompleks daripada Parameter Permintaan GET dalam Spring MVC?

Bagaimanakah Saya Boleh Mengikat Objek Kompleks daripada Parameter Permintaan GET dalam Spring MVC?

DDD
Lepaskan: 2024-11-21 10:23:10
asal
322 orang telah melayarinya

How Can I Bind Complex Objects from GET Request Parameters in Spring MVC?

Menghuraikan Objek Kompleks daripada GET @RequestParam dalam Spring MVC

Pertimbangkan senario di mana anda perlu melaksanakan borang penapis dalam halaman yang membuat pertanyaan sebuah meja. Kriteria penapis diserahkan kepada tindakan pengawal melalui permintaan GET, biasanya dalam format: http://foo.com/system/controller/action?page=1&prop1=x&prop2=y&prop3=z.

Kepada mengendalikan senario sedemikian, Spring MVC biasanya memerlukan anda untuk menentukan kaedah pengawal dengan berbilang parameter @RequestParam untuk mendapatkan setiap sifat secara individu:

@RequestMapping(value = "/action")
public @ResponseBody List<MyObject> myAction(
    @RequestParam(value = "page", required = false) int page,
    @RequestParam(value = "prop1", required = false) String prop1,
    @RequestParam(value = "prop2", required = false) String prop2,
    @RequestParam(value = "prop3", required = false) String prop3) { ... }
Salin selepas log masuk

Andaikan anda telah menentukan kelas MyObject dengan sifat prop1, prop2 dan prop3. Untuk memudahkan pengendalian parameter, anda mungkin berhasrat untuk mengikat semua sifat permintaan secara terus kepada contoh MyObject.

@RequestMapping(value = "/action")
public @ResponseBody List<MyObject> myAction(
    @RequestParam(value = "page", required = false) int page,
    MyObject myObject) { ... }
Salin selepas log masuk
Salin selepas log masuk

Bolehkah Mengikat kepada Objek Kompleks Dicapai?

Ya, adalah mungkin untuk mengikat parameter permintaan kepada objek kompleks menggunakan Spring MVC.

Cara Mengikat kepada Objek Kompleks

Untuk mencapai pengikatan ini, cuma alih keluar anotasi @RequestParam daripada parameter objek:

@RequestMapping(value = "/action")
public @ResponseBody List<MyObject> myAction(
    @RequestParam(value = "page", required = false) int page,
    MyObject myObject) { ... }
Salin selepas log masuk
Salin selepas log masuk

Dengan pengubahsuaian ini, Spring MVC secara automatik akan mengikat nilai parameter permintaan kepada sifat yang sepadan MyObject contoh.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengikat Objek Kompleks daripada Parameter Permintaan GET dalam Spring MVC?. 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