數據我想問一下如何製作像下面的願望JSON輸出:簡單的Java的JSON獲取從數據庫和顯示
{
"Result":"OK",
"Records":[
{"PersonId":1,"Name":"Benjamin Button","Age":17,"RecordDate":"\/Date(1320259705710)\/"},
{"PersonId":2,"Name":"Douglas Adams","Age":42,"RecordDate":"\/Date(1320259705710)\/"},
{"PersonId":3,"Name":"Isaac Asimov","Age":26,"RecordDate":"\/Date(1320259705710)\/"},
{"PersonId":4,"Name":"Thomas More","Age":65,"RecordDate":"\/Date(1320259705710)\/"}
]
}
我的JSP代碼是什麼樣子如下:
<%@page language="java" import="java.sql.*"%>
<%@page import="java.util.*" %>
<%@page contentType="text/html; charset=UTF-8"%>
<%@page import="org.json.simple.JSONArray"%>
<%@page import="org.json.simple.JSONObject"%>
<%@page import="org.json.simple.parser.JSONParser"%>
<%@page import="org.json.simple.parser.ParseException"%>
<%
String dept = (String)request.getParameter("dept");
String sql = "SELECT * FROM employees WHERE department='"+dept+"'";
try
{
Class.forName("com.mysql.jdbc.Driver");
Connection conn=null;
conn=DriverManager.getConnection("jdbc:mysql://localhost/jspjsons","root","123456");
ResultSet rs=null;
Statement stm1=conn.createStatement();
JSONArray list = new JSONArray();
rs=stm1.executeQuery(sql);
while(rs.next())
{
JSONObject obj=new JSONObject();
obj.put("PersonId", rs.getString("id"));
obj.put("Name", rs.getString("name"));
obj.put("Age", rs.getString("age"));
obj.put("RecordDate", rs.getString("date"));
list.add(obj);
}
out.print(list);
}
catch(Exception ex)
{
out.println("<h1>"+ex+"</g1>");
}
%>
還顯示輸出總是像這樣的前後支架[],我如何擺脫它?需要它來開始和{}到底要不要[]
您的代碼意味着您需要對象數組,因爲它必須以[]開頭。 –
如何以{}開始和結束?像上面想要的輸出 – Teddybugs
然後你不需要JSONArray list = new JSONArray();直接相反,您需要JSONObject,您可以定義JSONArray屬性並將其填充。 –