29 lines
913 B
Java
29 lines
913 B
Java
package kcc.com.pdf.service;
|
|
|
|
import com.fasterxml.jackson.core.JsonGenerator;
|
|
import com.fasterxml.jackson.databind.JsonSerializer;
|
|
import com.fasterxml.jackson.databind.SerializerProvider;
|
|
|
|
import kcc.com.pdf.service.PdfVO.Option;
|
|
|
|
import java.io.IOException;
|
|
import java.util.List;
|
|
|
|
public class PdfJsonSerializerOption extends JsonSerializer<List<?>> {
|
|
|
|
@Override
|
|
public void serialize(List<?> Option, JsonGenerator gen, SerializerProvider serializers) throws IOException {
|
|
if (Option == null || Option.isEmpty()) {
|
|
gen.writeNull();
|
|
return;
|
|
}
|
|
|
|
if (Option.size() == 1) {
|
|
// 옵션이 하나일 때 객체로 직렬화
|
|
serializers.defaultSerializeValue(Option.get(0), gen);
|
|
} else {
|
|
// 옵션이 여러 개일 때 배열로 직렬화
|
|
serializers.defaultSerializeValue(Option, gen);
|
|
}
|
|
}
|
|
} |