我有Spring MVC應用程序。Java-設置接口 - 按順序解析JSON字符串
我有以下的JSON字符串從客戶端發送
{
"cfgName": "Name",
"cfgfieldses": [
{
"cfgsName": "form.0",
"cfgValue": "someVal"
},
{
"cfgsName": "form.2",
"cfgValue": "hello"
},
{
"cfgsName": "form.3",
"cfgValue": "fname"
},
{
"cfgsName": "form.1",
"cfgValue": "how?"
}
]
}
我有兩個類解析這個
Config.java
public class Config implements Serializable {
private String cfgName;
private Set<CfgFields> cfgFieldses = new HashSet<CfgFields>(0);
//getters and setters
}
CfgFields.java
public class CfgFields implements Serializable {
private String cfgsName;
private String cfgValue;
//getters and setters
}
這裏是我的控制器
public void saveConfig(@RequestBody Config config) {
System.out.println(config.getCfgName());
for (Cfgfields cfgfields: config.getCfgFieldses()) {
System.out.println(cfgfields.getCfgsName());
}
}
的cfgfieldses
是不是爲了我得到,因爲它是Set
。這是我得到的輸出。
Name
form.1
form.2
form.0
form.3
我想從我從客戶端發送JSON字符串的有序方式。我可以嘗試列表而不是設置。但我想知道是否有可能使用Set
並以有序的方式獲取。
我的預期輸出是
Name
form.0
form.2
form.3
form.1
LinkedHashSet而不是哈希集? (LinkedHashSet保持插入的順序) – chillworld
如果你需要訂單序列,你需要去列表。 – Kick
@chillworld我已經嘗試了'LinkedHashSet'。但它也不起作用 – iCode