我使用一个节点打开服务器。 我可以访问链接以将OracleDB中的数据作为json对象查看。
JSONArray jsonrow = jsonObject.getJSONArray(“ rows”);
有一个名为JSONArray的变量,该变量取自名为JSONrow的JSONObject。我想在jsp中使用变量jsonrow。
for(int i = 0; i 在Java中,也可以在上面的句子中打印其他数据。 第二个代码是使用Java中声明的变量的jsp代码。
我可以从getSleep,getSdate动态添加数据。 但是,它只会显示最终数据。 所以我需要和jsonrow.length一样的方式。 请告诉我该怎么做。我需要一些建议。
谢谢。package graph;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import org.json.JSONArray;
import org.json.JSONObject;
public class getSleepData {
String arraysdate, arraysleep, sleep, sdate;
{
try {
String url = "http://220.81.195.81:4000/sleep";
URL obj = new URL(url);
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
int responseCode = con.getResponseCode();
System.out.println("\nSending 'GET' request to URL : " + url);
System.out.println("Response Code : " + responseCode);
BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
// System.out.println(response.toString());
JSONObject jsonObject = new JSONObject(response.toString());
JSONArray jsonmetadata = jsonObject.getJSONArray("metaData");
JSONArray jsonrow = jsonObject.getJSONArray("rows");
arraysleep = (String) ((JSONObject) jsonmetadata.get(0)).get("name");
arraysdate = (String) ((JSONObject) jsonmetadata.get(1)).get("name");
System.out.println("col1 :" + arraysleep);
System.out.println("col2 :" + arraysdate);
for (int i = 0; i < jsonrow.length(); i++) {
sleep = (String) ((JSONObject) jsonrow.get(i)).get("SLEEP");
sdate = (String) ((JSONObject) jsonrow.get(i)).get("SDATE");
System.out.println("sleep : " + sleep);
System.out.println("sdate : " + sdate);
}
}
<body>
<%
getSleepData SData = new getSleepData();
%>
<%=SData.getArraysleep()%>
<hr>
<%=SData.getArraysdate()%>
<hr>
<%=SData.getSleep()%>
<%=SData.getSdate()%>
</body>