Java:使用JSON创建POJO的最佳实践

时间:2017-11-29 05:40:09

标签: java json

我正在研究几年前编写的代码。它用JSON构建POJO。 JSON有一个statusType字段。所有其他字段的值取决于statusType字段。如果statusTypeSUCCESS,则填充字段successCodetotalValueconcession等,另一方面,如果FAILURE,则{ <1}},errorCodeexceptionType已填充。

retryCounts

POJO的定义如下:

{
   "statusType": "SUCCESS",
   "successCode": "20.304",
   "total": 1000
}

{
   "statusType": "FAILED",
   "errorCode": "50.31",
   "retryCounts": 2
}

客户端代码如下:

public class JsonPOJO {
    public String statusType;
    public String successCode;
    public int retryCounts;
    public int total;
    public String errorCode;
}

以上代码分散在各地(大约10个地方)。很快,我们将获得另一个状态代码JsonPOJO pojo = buildPojo(); if (pojo.getStatusCode.equals(“SUCCESS”)) { String successCode = pojo.getSuccessCode(); } else { String errorCode = pojo.getErrorCode(); } ,这将在JSON中引入更多字段,然后POJO将会有更多字段,因此在代码检查"IN_PROGRESS"时会有更多if / else语句。我不想通过这条路线。我想优雅地重构代码,这样如果我得到另一个状态代码(例如,statusType),我就不需要再次触及整个代码库了。

我找不到(也许我的谷歌搜索技能很糟糕)任何模式,一般来说,处理这种情况,所以我在这里寻求专家的意见/想法。

0 个答案:

没有答案