创建既是不可变的,又可以与Jackson进行序列化/反序列化,同时又易读且具有低水平样板的类,最佳方法是什么?
优先选择以下这种方式:
@Data(onConstructor = @__(@JsonCreator))
然后将所有字段设置为 private final
。但是,这甚至无法编译(我不确定原因)。使用
@AllArgsConstructor(onConstructor = @__(@JsonCreator))
将编译,但只会产生
InvalidDefinitionException: No serializer found for class