我有两个API引用下面的POJO类。
class Data{
private String name;
private String age;
private String address;
private String phone_number;
}
我需要在此POJO中注解字段,如下所示。
class Data
{
@JsonProperty(required = true)
private String name; // required field
@JsonProperty(required = true)
private String age; // required field
@JsonInclude( Include.Non_Null)
private String address; // optional field
@JsonIgnore
private String phone_number; // ignore field
}
注解只需要应用于其中一个API。其他API不应受到此更改的影响。
实现这一点的一种方法是创建两个单独的POJO,每个API一个。但是,是否可以使用相同的POJO类来实现结果?是否有一种方法可以根据正在调用的API来配置注解?
2条答案
按热度按时间agxfikkp1#
一些重复是不错的特别是如果他们用于两个不同的目的。
理想的情况是,它们也应该在两个不同的包中,这样就不会有名称冲突。
如果你想避免,但我不建议它是有
ecr0jaav2#
注解只需要应用于其中一个API。其他API不应受到此更改的影响。
实现这一点的一种方法是创建两个单独的POJO,每个API一个。但是,是否可以使用相同的POJO类来实现结果?是否有一种方法可以根据正在调用的API来配置注解?
您可以创建一个库,其中包含两个API必须共享的类,并将其作为依赖项引入到两个API中。
这将允许确保系统的两个部分将具有这些域类的相同定义。
**注意:**你需要有一个强有力的理由这样做。因为有一个理由将它们实现为独立的API,并且引入这种依赖性会在它们之间创建一个耦合。如果有大量这样的类,那么作为一个结果,API将无法独立地发展。