如何在JSP中使用JSONArray变量

时间:2019-04-09 09:21:49

标签: java json jsp oracledb

我使用一个节点打开服务器。 我可以访问链接以将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>

0 个答案:

没有答案