Rumah >Java >javaTutorial >Bagaimana untuk Mengecualikan Medan dari Objek Java Apabila Menghantar JSON dalam Spring MVC?
Dalam aplikasi Spring MVC, selalunya wajar untuk mengecualikan medan tertentu secara terpilih daripada objek Java apabila menghantarnya sebagai Jawapan JSON. Ini memastikan bahawa hanya maklumat yang diperlukan dikongsi dengan pelanggan, meningkatkan privasi data dan mengurangkan penggunaan lebar jalur.
Dalam kod yang disediakan, kelas model Pengguna mempunyai medan untuk createdBy, updatedBy, dan disulitkanPwd. Walau bagaimanapun, keperluan adalah untuk mengabaikan medan ini secara dinamik semasa menghantar respons JSON.
Terdapat dua cara untuk mengecualikan medan secara dinamik menggunakan anotasi:
1 . Menggunakan @JsonIgnoreProperties("fieldname"):
Anotasi kelas Pengguna dengan @JsonIgnoreProperties("fieldname"), nyatakan medan yang harus dikecualikan. Contohnya:
<code class="java">@JsonIgnoreProperties(value = {"createdBy", "updatedBy", "encryptedPwd"}) public class User { // ... (Class definition remains the same) }</code>
2. Menggunakan @JsonIgnore pada Medan Individu:
Anotasi medan tertentu dengan @JsonIgnore sebelum pengisytiharan medan. Contohnya:
<code class="java">public class User { private Integer userId; private String userName; @JsonIgnore private String encryptedPwd; // ... (Other fields remain the same) }</code>
Nota: @JsonIgnore ialah pendekatan yang disyorkan kerana ia memberikan kawalan yang lebih terperinci ke atas medan mana yang dikecualikan.
Untuk pelaksanaan praktikal, rujuk contoh GitHub berikut: https://github.com/FasterXML/jackson-databind/issues/1416
Atas ialah kandungan terperinci Bagaimana untuk Mengecualikan Medan dari Objek Java Apabila Menghantar JSON dalam Spring MVC?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!