下面是完整攻略:
准备工作
首先,我们需要导入 org.json.JSONObject
包,这个包可以帮助我们轻松地处理 JSON 数据。 接下来,创建 HTTPURLConnection
类型的对象,比如命名为 connection
。然后用 connection.connect()
连接到服务端接口。
读取服务接口返回的数据
读取服务端接口返回的数据需要使用 connection.getInputStream()
方法。他会返回一个输入流对象,这个对象代表着服务端接口返回的数据实体。 接下来,我们可以使用 BufferedReader
类来读取数据实体并以字符串的形式存储下来。示例如下:
InputStream inputStream = connection.getInputStream();
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream));
String line;
StringBuilder stringBuilder = new StringBuilder();
while ((line = bufferedReader.readLine()) != null) {
stringBuilder.append(line);
}
String response = stringBuilder.toString();
处理返回的 JSON 数据
当我们成功地获取到服务端接口返回的 JSON 数据后,我们需要将其转换为一个 JSONObject 对象,以便我们使用 Java 来处理它。 示例代码如下:
JSONObject jsonObject = new JSONObject(response);
这段代码将字符串形式的 JSON 数据转换为一个 JSONObject 对象。接下来,我们可以使用 JSONObject 对象的方法来获取数据或操作数据。
示例
下面是两个示例,分别演示如何从服务端接口返回的 JSON 数据中获取数据和如何向服务端接口发送 JSON 数据。
示例 1:从返回数据中获取数据
假设服务端接口返回的 JSON 数据如下:
{
"name": "Peter",
"age": 25,
"address": {
"city": "New York",
"state": "NY"
}
}
我们可以使用下面的代码来获取其中的数据:
String name = jsonObject.getString("name");
int age = jsonObject.getInt("age");
JSONObject address = jsonObject.getJSONObject("address");
String city = address.getString("city");
String state = address.getString("state");
示例 2:向服务端接口发送 JSON 数据
假设服务端接口需要接收如下 JSON 数据:
{
"name": "Peter",
"age": 25,
"address": {
"city": "New York",
"state": "NY"
}
}
我们可以使用下面的代码构建 JSON 数据并发送到服务端接口:
JSONObject requestData = new JSONObject();
requestData.put("name", "Peter");
requestData.put("age", 25);
JSONObject address = new JSONObject();
address.put("city", "New York");
address.put("state", "NY");
requestData.put("address", address);
connection.setDoOutput(true);
DataOutputStream outputStream = new DataOutputStream(connection.getOutputStream());
outputStream.write(requestData.toString().getBytes(StandardCharsets.UTF_8));
outputStream.flush();
outputStream.close();
以上就是关于“java读取其他服务接口返回的json数据示例代码”的完整攻略,希望能对你有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:java读取其他服务接口返回的json数据示例代码 - Python技术站