AdminServive.java
[code="java"] NewsDAO dao = new NewsDAO();
JSONObject _str = dao.Query();
response.getWriter().print(_str);
System.out.println(_str);[/code] [color=red]//为什么打印只有一条啊[/color]
NewsDAO.java
[code="java"]public static JSONObject Query(){
String sql = "select t.* from news t ";
JSONObject json = new JSONObject();
try {
Connection conn = DB_connect.createConnection();
ps = conn.prepareStatement(sql);
rs = ps.executeQuery();
while(rs.next()){
json.put("title", rs.getString("title"));
json.put("id", rs.getInt("id"));
// System.out.print(json.toStringcolor=red);//有很多条[/color] }
}
catch(Exception e ) {
e.printStackTrace();
}
return json;
}[/code]
[code="java"]
public static JSONArray Query(){
String sql = "select t.* from news t ";
JSONArray jsonArray = new JSONArray();
try {
Connection conn = DB_connect.createConnection();
ps = conn.prepareStatement(sql);
rs = ps.executeQuery();
while(rs.next()){
JSONObject json = new JSONObject();
json.put("title", rs.getString("title"));
json.put("id", rs.getInt("id"));
jsonArray.put(json);
}
}
catch(Exception e ) {
e.printStackTrace();
}
return jsonArray ;
}
[/code]
这样应该就是多条了
[code="java"]
NewsDAO dao = new NewsDAO();
JSONArray jsonArr= dao.Query();
for(int i=0;i<jsonArr.length();i++){
JSONObject obj= jsonArr.getJSONObject(i);
System.out.println(obj);
}
[/code]
数据库是有多条?
你应该采用JSONArray,因为你返回的是一个数组。
你是指这个System.out.print(json.toStringcolor=red);就打印了一条?
还是前那个System.out.println(_str);
打印的贴出来,全给你拼成一条了吧
贴出来吧