Mengkonfigurasi Jackson untuk Menggunakan Medan Sahaja: Penyelesaian Komprehensif
Apabila mensiri dan menyahsiri objek kepada JSON, Jackson secara lalai menggunakan kedua-dua getter/setters (sifat) dan medan. Walau bagaimanapun, kadangkala anda mungkin memilih untuk bergantung sepenuhnya pada medan untuk proses ini. Begini cara anda boleh mencapai ini:
Pada peringkat kelas individu, anda boleh mengawal tingkah laku menggunakan anotasi @JsonAutoDetect, seperti yang dinyatakan dalam soalan. Untuk konfigurasi global, anda boleh menyesuaikan ObjectMapper seperti berikut:
ObjectMapper mapper = new ObjectMapper(); mapper.setVisibility( mapper.getSerializationConfig().getDefaultVisibilityChecker() .withFieldVisibility(JsonAutoDetect.Visibility.ANY) .withGetterVisibility(JsonAutoDetect.Visibility.NONE) .withSetterVisibility(JsonAutoDetect.Visibility.NONE) .withCreatorVisibility(JsonAutoDetect.Visibility.NONE) );
Jika anda memerlukan akses global kepada pemeta yang dikonfigurasikan, pertimbangkan untuk menggunakan kelas pembalut untuk pendekatan berpusat pada konfigurasi.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengkonfigurasi Jackson untuk Menggunakan Medan Sahaja untuk Pensirilan dan Penyahserikatan JSON?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!