Как использовать переменные JSONArray в jsp - PullRequest
0 голосов
/ 09 апреля 2019

Я использую узел, чтобы открыть сервер. Я могу получить доступ к ссылке, чтобы просмотреть данные в OracleDB как объект json.

JSONArray jsonrow = jsonObject.getJSONArray ("rows");

Существует переменная с именем JSONArray, которая взята из JSONObject с именем jsonrow. Я хочу использовать переменную jsonrow в jsp.

для (int i = 0; i

В Java дополнительные данные также могут быть напечатаны в приведенном выше предложении.

Второй код - это код jsp, который использует переменные, объявленные в java. Я могу динамически добавлять данные из 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>
...