JavaBeanSerializer.java
package com.alibaba.fastjson.serializer;
import com.alibaba.fastjson2.JSONWriter;
import com.alibaba.fastjson2.writer.FieldWriter;
import com.alibaba.fastjson2.writer.ObjectWriter;
import java.io.IOException;
import java.lang.reflect.Type;
public class JavaBeanSerializer
implements ObjectSerializer {
private final ObjectWriter raw;
public JavaBeanSerializer(ObjectWriter raw) {
this.raw = raw;
}
@Override
public void write(
JSONSerializer serializer,
Object object,
Object fieldName,
Type fieldType,
int features
) throws IOException {
JSONWriter jsonWriter = serializer.out.raw;
raw.write(jsonWriter, object, fieldName, fieldType, 0L);
}
public Object getFieldValue(Object object, String key) {
FieldWriter fieldWriter = raw.getFieldWriter(key);
if (fieldWriter == null) {
return null;
}
return fieldWriter.getFieldValue(object);
}
}