Rumah  >  Artikel  >  Java  >  Bagaimana untuk Menyelesaikan Ralat "Medan Tidak Diiktiraf" Apabila Menggunakan Jackson dengan JSON?

Bagaimana untuk Menyelesaikan Ralat "Medan Tidak Diiktiraf" Apabila Menggunakan Jackson dengan JSON?

Barbara Streisand
Barbara Streisandasal
2024-11-17 05:59:03534semak imbas

How to Resolve

Jackson dengan JSON: Menyelesaikan Ralat "Medan Tidak Dikenali"

Mengendalikan data JSON dalam aplikasi Java boleh dipermudahkan dengan bantuan Jackson, a perpustakaan pemprosesan JSON yang terkenal. Walau bagaimanapun, adalah mungkin untuk menghadapi ralat yang berkaitan dengan medan yang tidak dikenali, seperti yang dilihat dalam soalan "Jackson dengan JSON: Medan tidak dikenali, tidak ditandakan sebagai tidak dikenali."

Mesej ralat menunjukkan bahawa medan bernama "pembungkus" bukan diiktiraf dalam JSON yang disediakan. Untuk menangani isu ini, kami boleh memanfaatkan anotasi peringkat kelas Jackson:

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;

@JsonIgnoreProperties
public class Wrapper { ... }

Dengan menggunakan anotasi ini pada kelas "Wrapper", anda mengarahkan Jackson untuk mengabaikan sebarang sifat yang tidak ditakrifkan secara eksplisit dalam kelas. Ini amat berguna apabila bekerja dengan data JSON yang termasuk sifat yang tidak dijangka atau tidak diketahui. Daripada cuba memetakan setiap medan dalam JSON, Jackson hanya akan mengabaikan medan yang tidak sepadan dengan ahli kelas yang ditentukan.

Jika anda ingin mengabaikan sebarang harta yang tidak diisytiharkan, tanpa mengira namanya, anda boleh menggunakan anotasi berikut:

@JsonIgnoreProperties(ignoreUnknown = true)
public class Wrapper { ... }

Dengan menggunakan anotasi ini, anda boleh menyelesaikan ralat "medan tidak dikenali" dengan berkesan dan berjaya menukar rentetan JSON kepada objek Java menggunakan Jackson.

Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Ralat "Medan Tidak Diiktiraf" Apabila Menggunakan Jackson dengan JSON?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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