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);
}
}
JsonbConfig, JsonbTypeSerializer, JsonbDeserializer, JsonbAdapter| 修飾子と型 | メソッドと説明 |
|---|---|
void | serialize(T obj, JsonGenerator generator, SerializationContext ctx) オブジェクトを JSON ストリームに直列化します。 |
void serialize(T obj, JsonGenerator generator, SerializationContext ctx)
obj - 直列化するオブジェクト。generator - java オブジェクトを JSON ストリームに書き込むために使用される JSON ジェネレーター。ctx - JSONB マッパーコンテキスト。サブオブジェクトを直列化するために使用します。Copyright © 2018,2020 Eclipse Foundation.
Use is subject to license terms.