我有來自ResultSet的數據,其中包含三個字段:DataType,Data,DataValue。我想構建一個Java集合,然後構建JSON編碼。如何從ResultSet構建此Java集合
這是輸出,當我嘗試打印:
System.out.println(resultSet.getString("DATATYPE") + " --> " + resultSet.getString("DATA") + " --> " + resultSet.getString("DATAVALUE"));
輸出:
Map<String, String> data = new HashMap<String,String>();
HashMultimap<String, Map> multiMap = HashMultimap.<String, Map> create();
...
//iterating the resultSet
..
data.put(resultSet.getString("DATA"), resultSet.getString("DATAVALUE"));
multiMap.put(resultSet.getString("DATATYPE"), data);
..
// resultSet ends
將得到的Collection:
Address --> Test --> JHGJHGJKG
Address --> City--> Some city
Address --> State --> Some state
Address --> Downtown --> Some downtown
Address --> Telephone --> 547455654
Address --> Street --> Some street
Customer Information --> Downtown --> some other downtown
Customer Information --> Job --> Programmer
Customer Information --> Identification card --> ID32443
Customer Information --> ZIP Code --> 74584
Customer Information --> Kind of person --> Regular
Customer Information --> Birthday --> 10 01 1980
Customer Information --> Telephone --> 99832498
Other --> Last visit --> 10 01 1980
我用番石榴谷歌集合這樣attemped/Multimap將是:
{
[
Address = {
Test = somevalue,
City = SomeCity,
...
},
Customer Information={
Job = programer,
Identificationcard = ID34234,
...
},
Other{
Lastvisit = 10-02-1990
}
]
}
我試過了,但沒有成功的結果。
ResultSet的所有結果都是動態類型,數據和值。我不能使用定義類,例如對於地址數據,基於輸入數據無法顯示。
你是否想要使用Collections?這似乎是一個需要使用'ValueObject'和'訪問者模式'來解決的問題 – 2012-03-16 17:37:21
不,不一定,但這是我第一次想到。在此先感謝;)我會考慮你的回答 – chroman 2012-03-16 17:46:09