我在小型項目中遇到問題。我花了大約4天的時間,但還沒有最好的解決方案。JSONObject和JDBC返回格式json不正確
這是我的源代碼:
public static JSONObject fetchPersonCarInfo() throws Exception {
// get data from 2 tables: Cars and Manufacturer
String query = "SELECT * from mytable";
statement = connection.prepareStatement(query);
rs = statement.executeQuery();
JSONArray carsArray = null;
while(rs.next()) {
carObj.put("id", (new string(rs.getString("id"))));
carsArray.put(carObj);
for(int i=0 ; i< carsArray.length() ; i++) {
manufacturerObj.put(new String(rs.getString("manufacturer_id")), carsArray);
manufacturerObj.put(new String(rs.getString("manufacturer_name")), carsArray);
}
System.out.println(manufacturerObj.toString());
}
System.out.println("Ok");
}
catch (Exception e) {
// TODO Auto-generated catch block
if (connection != null) {
connection.close();
}
throw e;
}
finally {
if (connection != null) {
connection.close();
}
}
return manufacturerObj;
}
然後,我建我的代碼,並通過URL部署,它似乎不正確的,有什麼不對如我所料,這是我的結果JSON格式:
{
"1":
[
{
"manufacturer_id": "1",
"manufacturer_name": "Honda"
},
{
"id": "4",
"name": "Honda1",
"price": "66000"
}
],
}
我該如何改變我的代碼來構建正確的上述json格式。非常感謝...
你的第一個代碼示例是不是JSON –
我會推薦像「{」製造商「:[{」id「:1,」name「:」Honda「,」cars「:[...]},{」id「:2,」name「:」Toyota「 ,「汽車」:[...]}]}' –
親愛的cricket_007,是的,我的第一個代碼不是Json,它只有Json格式供我參考輸出。我認爲我的第二個代碼有一些錯誤 – luongkhanh