ホームページ >Java >&#&チュートリアル >Spring でシリアル化と逆シリアル化にカスタム ObjectMapper を使用するにはどうすればよいですか?
Spring での ObjectMapper の構成
Spring では、シリアル化プロセスと逆シリアル化プロセスの動作をカスタマイズするように ObjectMapper を構成できます。一般的な使用例の 1 つは、@JsonProperty などの特定のアノテーションが付けられていない限り、フィールドをシリアル化から除外することです。
問題:
ObjectMapper を次のように構成するとき@JsonProperty アノテーションが付けられたフィールドのみをシリアル化します。NumbersOfNewEvents クラスにはシリアル化されたフィールドのすべての属性が含まれます。 JSON.
答え:
この問題を理解するための鍵は、servlet.xml で定義されたカスタム CompanyObjectMapper が Spring で使用されていないことです。解決策は、CompanyObjectMapper Bean に @Configuration アノテーションを付け、Spring 構成クラスの Bean メソッドとして定義することです。これにより、カスタム ObjectMapper が Spring によって確実に選択され、使用されるようになります。
Spring Boot でこれを実現する方法の例を次に示します。
@Configuration public class JacksonConfiguration { @Bean public ObjectMapper objectMapper() { return new CompanyObjectMapper(); } }
この構成は、デフォルトの ObjectMapper Bean をオーバーライドし、カスタム CompanyObjectMapper がシリアル化に使用されるようにし、 deserialization.
注: CompanyObjectMapper クラスで定義された VisibilityChecker は、Jackson 2.4.6 を使用したシリアル化には影響しません。シリアル化からフィールドを除外するには、代わりに @JsonIgnore アノテーションを使用します。
以上がSpring でシリアル化と逆シリアル化にカスタム ObjectMapper を使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。