使用生成器方法自动生成pojos

时间:2020-07-01 10:49:00

标签: java spring spring-boot rest lombok

目前,我正在使用swagger codegen工具将RAML定义转换为swagger格式,并从该格式生成Java客户端。这给了我RAML中提到的所有数据类型的POJO。每次更改RAML类型中的某些数据字段时,都必须重新生成POJO,并且必须重写服务层中的所有代码实现。重复做同样的事情变得非常麻烦。

我在考虑是否只有这些POJO是使用生成器模式生成的,例如

mydataobject.builder.addfield1(10).addfield2(2); 这将极大地帮助我保持服务层中的代码不变。

是否可以自动生成其中包含构建器方法的pojo?

1 个答案:

答案 0 :(得分:0)

您可以使用Lombok

@lombok.Builder// Builder companion class, and static method
@lombok.Value // Getters, setters, and contructors
class Pojo {
    String value;
    Number number;
}

这给您以下代码:

final Pojo pojo = Pojo.builder()
    .value("foo")
    .number(100)
    .build();

您必须继续执行生成的代码才能添加此批注,有关此说明,请参见Add lombok (or any) annotation to swagger generated class