设计json以保存更改的数据

时间:2016-06-21 18:05:43

标签: java json design-patterns

我曾经使用JSON从java应用程序中保存数据。 基本上,应用程序是一个复杂的形式。用户输入的每个值都以字段名称作为键存储。当应用程序变得更复杂时,当密钥被更改时,我遇到了一个问题。 例如,应用程序有一个字段“Optionnal Module”,因此JSON看起来像:

"Optional Module:": "Yes"

然后,我们添加了另一个“可选模块”,所以我们有

"Optional Module 1:": "Yes",
"Optional Module 2:": "No"

在代码中,我将值直接加载到文本字段中,如optModule.setText(parsedJSON.get("Optionnal Module"));

但是当我添加第二个模块时,它变为

if (parsedJSON.get("Optionnal Module") != null) {
    optModul1.setText(parsedJSON.get("Optionnal Module"));
} else {
    optModul1.setText(parsedJSON.get("Optionnal Module 1"));
}

正如您所看到的,代码可能会对应用程序所做的所有更改造成混淆。

我肯定可以使用Facade设计模式来避免让类保持简单,但我还有另一个类要维护......

然后我认为我可以使用ID而不是JSON键的文本字段名称,这是有效的。这是一个好习惯吗?有没有其他方法来处理这些变化?

我希望我能够理解。

谢谢!

0 个答案:

没有答案