クラス DefaultClassMapper

java.lang.ObjectSE
org.springframework.amqp.support.converter.DefaultClassMapper
実装されたすべてのインターフェース:
ClassMapperInitializingBean

public class DefaultClassMapper extends ObjectSE implements ClassMapper, InitializingBean
MessageProperties の型情報を使用して、JSON との間でマップします。型を含むメッセージプロパティのデフォルト名は "__TypeId__" です。メッセージプロパティにメッセージプロパティが見つからない場合に、静的に定義された型へのマッピングを可能にする、オプションのプロパティ setDefaultType(Class) が提供されます。setIdClassMapping(Map) を使用して、"__TypeId__" ヘッダー内のトークンをクラスにマップできます。このクラスが Spring 管理の Bean でない場合は、afterPropertiesSet() を呼び出して、クラスと ID のマッピングをセットアップします。
作成者:
Mark Pollack, Gary Russell, Artem Bilan
  • フィールドの詳細

  • コンストラクターの詳細

    • DefaultClassMapper

      public DefaultClassMapper()
  • メソッドの詳細

    • setDefaultType

      public void setDefaultType(ClassSE<?> defaultType)
      メッセージプロパティに型情報が見つからない場合に、toClass(MessageProperties) によって返される型。
      パラメーター:
      defaultType - 設定する defaultType。
    • setDefaultMapClass

      public void setDefaultMapClass(ClassSE<?> defaultMapClass)
      使用する MapSE の型を設定します。送信メッセージの場合、"__TypeId__" ヘッダーを HashTable に設定します。受信メッセージの場合、"__TypeId__" ヘッダーが Hashtable の場合、このクラスに変換されます。
      パラメーター:
      defaultMapClass - マップクラス。
      導入:
      2.0
      関連事項:
    • getClassIdFieldName

      public StringSE getClassIdFieldName()
      型 ID を含むヘッダーの名前。
      戻り値:
      "__TypeId__"
      関連事項:
    • setIdClassMapping

      public void setIdClassMapping(MapSE<StringSE,ClassSE<?>> idClassMapping)
      型 Id ("__TypeId__" ヘッダー内) のマップをクラスに設定します。発信メッセージの場合、クラスがこのマップにない場合、"__TypeId__" ヘッダーは完全修飾クラス名に設定されます。
      パラメーター:
      idClassMapping - ID からクラスへのマップ。
    • setTrustedPackages

      public void setTrustedPackages(@Nullable StringSE... trustedPackages)
      逆直列化中に信頼する一連のパッケージを指定します。アスタリスク (*) は、すべてを信頼することを意味します。
      パラメーター:
      trustedPackages - デシリアライズ用の信頼できる Java パッケージ
      導入:
      1.6.11
    • afterPropertiesSet

      public void afterPropertiesSet()

      クラスから型 ID への逆マッピングを作成します。

      次で指定:
      インターフェース InitializingBeanafterPropertiesSet 
    • fromClass

      public void fromClass(ClassSE<?> clazz, MessageProperties properties)
      次で指定:
      インターフェース ClassMapperfromClass 
    • toClass

      public ClassSE<?> toClass(MessageProperties properties)
      次で指定:
      インターフェース ClassMappertoClass