Apabila bekerja dengan data sensitif semasa bersiri dan penyahsirilan, selalunya wajar untuk mengecualikan sifat tertentu daripada dihantar. Anotasi @JsonIgnore menawarkan fungsi ini, tetapi ia terpakai pada kedua-dua pensirilan dan penyahserilan secara lalai. Untuk senario di mana anda perlu menyekat penyulitan untuk bersiri sahaja, berikut ialah cara anda boleh mencapainya:
Sebelum Jackson versi 1.9, anda boleh menyekat @JsonIgnore untuk mendapatkan kaedah untuk dayakan penyahsirilan sambil melumpuhkannya untuk pensirilan. Ini bermakna hanya menganotasi pengambil dengan @JsonIgnore.
Dalam versi Jackson yang kemudian, anotasi @JsonProperty memberikan fleksibiliti tambahan. Untuk menggunakan @JsonIgnore hanya untuk bersiri:
Untuk versi dengan anotasi @JsonProperty.Access Jackson, anda mempunyai pilihan lain:
@JsonProperty(access = JsonProperty.Access.WRITE_ONLY) private String password;
Ini membenarkan penyirian kata laluan tetapi menghalang penyahserikannya, dengan berkesan melindunginya. Rujuk dokumentasi Jackson untuk butiran lanjut.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memohon secara Selektif @JsonAbaikan untuk Pensirian Hanya di Jackson?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!