我正在使用 Jackson 将 Java 模型对象序列化为 JSON,对于其中一个字段,比如说“标题”,我映射值的方式取决于另一个字段的值。因此,它不是一个直接的映射。
我可以创建一个自定义映射器,在映射“标题”字段时调用该映射器,从而允许我添加必要的逻辑吗?
最佳答案
自定义日期字段输出的示例:
@JsonSerialize(using=CustomDateSerializer.class)
private Date timestamp;
CustomDateSerializer.class
public class CustomDateSerializer extends JsonSerializer<Date> {
public void serialize(Date value, JsonGenerator gen, SerializerProvider arg2) throws
IOException, JsonProcessingException {
SimpleDateFormat formatter = new SimpleDateFormat("dd-MM-yyyy H:m:s");
String formattedDate = formatter.format(value);
gen.writeString(formattedDate);
}
}
关于java - 自定义 Jackson 映射器来处理单个字段的映射?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18361010/