ジャクソンアノテーションのポリモーフィズム:@JsonTypeInfoの使用法

クリス:

@JsonTypeInfoアノテーションをインターフェースに使用できるかどうか知りたいシリアル化および逆シリアル化する必要があるクラスのセットがあります。

これが私がやろうとしていることです。私は2つの実装クラスSub1Sub2実装していMyIntます。一部のモデルクラスには、実装タイプのインターフェイスリファレンスがあります。多態性に基づいてオブジェクトを逆シリアル化したい

@JsonTypeInfo(use=JsonTypeInfo.Id.NAME, include=As.WRAPPER_OBJECT)
@JsonSubTypes({
    @Type(name="sub1", value=Sub1.class), 
    @Type(name="sub2", value=Sub2.class)})
public interface MyInt{
}

@JsonTypeName("sub1")
public Sub1 implements MyInt{
}

@JsonTypeName("sub2")
public Sub2 implements MyInt{
}

私は以下を得ますJsonMappingException

予期しないトークン(END_OBJECT)、予期されるFIELD_NAME:タイプIDを含むJSON文字列が必要です

Senthil Kumar:

@JsonSubTypes.Type このような値と名前が必要です

@JsonTypeInfo(use=JsonTypeInfo.Id.NAME, include=As.WRAPPER_OBJECT, property="type")
@JsonSubTypes({       
    @JsonSubTypes.Type(value=Dog.class, name="dog"),
    @JsonSubTypes.Type(value=Cat.class, name="cat")       
}) 

サブクラスで@JsonTypeName("dog")、名前を言うために使用します。
dogとは、catという名前のプロパティに設定されますtype

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

SpringおよびJsonTypeInfoアノテーションを使用したJSONのポリモーフィックオブジェクトモデルへの逆シリアル化

分類Dev

ジャクソンプロパティのスプリングブートとポリモーフィズム

分類Dev

@MappedSuperclassアノテーションを使用したHibernateエンティティポリモーフィズム

分類Dev

Javaでのリードソロモンアルゴリズムの使用法

分類Dev

アノテーション型宣言での@Autowiredの使用法

分類Dev

@Nullableアノテーションの使用法

分類Dev

SpringGeneratedValueアノテーションの使用法

分類Dev

Entity FrameworkInversePropertyアノテーションの使用法

分類Dev

ジャージーでのジャクソンとジェティソンの使用法

分類Dev

ポリモーフィック関数の機能アノテーション

分類Dev

ジャクソンポリモーフィックデシリアライズ

分類Dev

ジャクソンフィルターとポリモーフィズム

分類Dev

Springの@Requiredアノテーションの推奨される使用法

分類Dev

Bean定義なしのSpring @ configureアノテーションの使用法

分類Dev

リーフレットルーティングマシン-オプションの使用法

分類Dev

ジャクソンのAtomicLongのポリモーフィックシリアル化に関する問題

分類Dev

EntityFrameworkのポリモーフィックアソシエーション

分類Dev

ジャクソン-@JsonValueアノテーション付きフィールドはデシリアライズできません

分類Dev

Railsでのポリモーフィックアソシエーションのテスト

分類Dev

実行時のインジェクションによるJavaポリモーフィズム

分類Dev

ゲッターとは異なる名前のフィールドでジャックソンアノテーションJsonUnwrappedを使用する

分類Dev

パーティションの使用法を交換

分類Dev

パーティションの使用法を交換

分類Dev

ポリモーフィック逆シリアル化ジャクソン

分類Dev

tf.layer.convの適切な使用法の使用-アクティベーションとactivity_regularizer

分類Dev

コレクション内のスマートポインターポリモーフィズム

分類Dev

コントローラーアクションでポリモーフィズム1つの方法を使用する方法

分類Dev

ラジオ付きのフォームでの<label>のセマンティックな使用法

分類Dev

Protobufは任意のメッセージをアンマーシャリングします。Protobufメッセージポリモーフィズム

Related 関連記事

  1. 1

    SpringおよびJsonTypeInfoアノテーションを使用したJSONのポリモーフィックオブジェクトモデルへの逆シリアル化

  2. 2

    ジャクソンプロパティのスプリングブートとポリモーフィズム

  3. 3

    @MappedSuperclassアノテーションを使用したHibernateエンティティポリモーフィズム

  4. 4

    Javaでのリードソロモンアルゴリズムの使用法

  5. 5

    アノテーション型宣言での@Autowiredの使用法

  6. 6

    @Nullableアノテーションの使用法

  7. 7

    SpringGeneratedValueアノテーションの使用法

  8. 8

    Entity FrameworkInversePropertyアノテーションの使用法

  9. 9

    ジャージーでのジャクソンとジェティソンの使用法

  10. 10

    ポリモーフィック関数の機能アノテーション

  11. 11

    ジャクソンポリモーフィックデシリアライズ

  12. 12

    ジャクソンフィルターとポリモーフィズム

  13. 13

    Springの@Requiredアノテーションの推奨される使用法

  14. 14

    Bean定義なしのSpring @ configureアノテーションの使用法

  15. 15

    リーフレットルーティングマシン-オプションの使用法

  16. 16

    ジャクソンのAtomicLongのポリモーフィックシリアル化に関する問題

  17. 17

    EntityFrameworkのポリモーフィックアソシエーション

  18. 18

    ジャクソン-@JsonValueアノテーション付きフィールドはデシリアライズできません

  19. 19

    Railsでのポリモーフィックアソシエーションのテスト

  20. 20

    実行時のインジェクションによるJavaポリモーフィズム

  21. 21

    ゲッターとは異なる名前のフィールドでジャックソンアノテーションJsonUnwrappedを使用する

  22. 22

    パーティションの使用法を交換

  23. 23

    パーティションの使用法を交換

  24. 24

    ポリモーフィック逆シリアル化ジャクソン

  25. 25

    tf.layer.convの適切な使用法の使用-アクティベーションとactivity_regularizer

  26. 26

    コレクション内のスマートポインターポリモーフィズム

  27. 27

    コントローラーアクションでポリモーフィズム1つの方法を使用する方法

  28. 28

    ラジオ付きのフォームでの<label>のセマンティックな使用法

  29. 29

    Protobufは任意のメッセージをアンマーシャリングします。Protobufメッセージポリモーフィズム

ホットタグ

アーカイブ