インターフェース JsonbSerializer<T>

型パラメーター:
T - シリアライザをバインドする型。

public interface JsonbSerializer<T>

指定された型のカスタムシリアライザーを表すインターフェース。JsonbAdapter シリアライザとは異なり、JsonGenerator を使用して java オブジェクトを JSON ストリームに直接書き込むことにより、シリアライゼーションプロセスをより細かく制御できます。SerializationContext は JSONB ランタイムとして機能し、提供された java オブジェクトを直列化できます。

シリアライザは、JsonbConfig.withSerializers(JsonbSerializer[]) メソッドまたは型の JsonbTypeSerializer アノテーションを使用して登録されます。

カスタムシリアライザーのサンプル:

 class Box {
     public BoxInner boxInnerObject;
     public String name;
 }

 class BoxSerializer implements JsonbSerializer<Box> {
      public void serialize(Box box, JsonGenerator generator, SerializationContext ctx) {
          generator.write("name", box.name);
          ctx.serialize("boxInnerObject", generator);
      }
 }
 
導入:
JSON バインディング 1.0
関連事項:
  • 方法の概要

    修飾子と型
    メソッド
    説明
    void
    オブジェクトを JSON ストリームに直列化します。
  • メソッドの詳細

    • serialize

      void serialize(T obj, JsonGenerator generator, SerializationContext ctx)
      オブジェクトを JSON ストリームに直列化します。
      パラメーター:
      obj - 直列化するオブジェクト。
      generator - java オブジェクトを JSON ストリームに書き込むために使用される JSON ジェネレーター。
      ctx - JSONB マッパーコンテキスト。サブオブジェクトを直列化するために使用します。