我正在使用Jersey來構建Java REST Web應用程序以獲取JSON數據輸出。Jersey JSON鍵/值順序
我遇到了鍵/值對的排序問題。 我希望它是這樣的順序:ID,名稱,區域ID 但在我的JSON輸出它是這樣的順序:areaId,ID,名稱雖然。
有人知道如何控制排序嗎?
這是我的房間對象類:
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlRootElement;
@XmlRootElement
public class RoomEntitiy {
private int id;
private String name;
private int areaId;
public RoomEntitiy() {}
public RoomEntitiy(int id, String name, int areaId) {
this.id = id;
this.name = name;
this.areaId = areaId;
}
@XmlAttribute
public final int getId() {
return id;
}
public final void setId(int id) {
this.id = id;
}
public final String getName() {
return name;
}
public final void setName(String name) {
this.name = name;
}
public final int getArea() {
return areaId;
}
public final void setArea(int areaId) {
this.areaId = areaId;
}
}
這是我的JSON輸出:
{
"rooms": [
{
"areaId": 2,
"id": 1,
"name": "room 831"
},
{
"areaId": 1,
"id": 2,
"name": "room 683"
},
{
"areaId": 1,
"id": 3,
"name": "Raum 485"
},
{
"areaId": 5,
"id": 4,
"name": "room 600"
},
{
"areaId": 2,
"id": 5,
"name": "room 283"
},
{
"areaId": 4,
"id": 6,
"name": "room 696"
}
]
}
UPDATE 好吧,我解決了這個問題。感謝您的回覆。
我剛添加以下代碼下面@XmlRootElement
@XmlType(propOrder = {
"id",
"name",
"areaId"
})
爲什麼訂單很重要? JavaScript對象沒有固有的順序。 –