fairnet/src/main/java/kcc/com/pdf/service/PdfJsonSerializerOptions.java

29 lines
933 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.Options;
import java.io.IOException;
import java.util.List;
public class PdfJsonSerializerOptions extends JsonSerializer<List<Options>> {
@Override
public void serialize(List<Options> options, JsonGenerator gen, SerializerProvider serializers) throws IOException {
if (options == null || options.isEmpty()) {
gen.writeNull();
return;
}
if (options.size() == 1) {
// 옵션이 하나일 때 객체로 직렬화
serializers.defaultSerializeValue(options.get(0), gen);
} else {
// 옵션이 여러 개일 때 배열로 직렬화
serializers.defaultSerializeValue(options, gen);
}
}
}