json数据如下

    "name": [{"age": 25,"height": 160,"weight": 100,"email": "1946898935"},{"age": 26,"height": 178,"weight": 140,"email": "1234567"}],"address": [{"addressname": "福州市"},{"addressname": "厦门市"}]
}

下面的代码是访问一个页面并同时调用一个api;

@RequestMapping("/myapitest")//url映射地址public ModelAndView apitest(){/*    *这是一个页面访问urlmapping***/
//      System.out.println(mysendGet("http://localhost:8080/weidaiTest/testapi","param=p"));String s = mysendGet("http://localhost:8080/weidaiTest/testapi","param=p");//通过mysendGet函数调用接口JSONObject json = JSONObject.fromObject(s);//将字符串转化为json对象JSONArray jary = json.getJSONArray("name");//去到name对应的数组System.out.println(JSONObject.fromObject(jary.get(0)).get("email"));//数组内部的元素是对象,见上面的ison数据,对应到eamil的1946898935ModelAndView mv = new ModelAndView("test");//要返回到浏览器的页面return mv;}

以下是调用接口的函数

public static String mysendGet(String url, String param) {String result = "";BufferedReader in = null;try {String urlNameString = url + "?" + param;
//          System.out.println("请求地址是"+urlNameString);URL realUrl = new URL(urlNameString);// 打开和URL之间的连接URLConnection connection = realUrl.openConnection();// 设置通用的请求属性// 建立实际的连接connection.connect();// 定义 BufferedReader输入流来读取URL的响应in = new BufferedReader(new InputStreamReader(connection.getInputStream()));String line;while ((line = in.readLine()) != null) {System.out.println(line);result+=line;}System.out.println("String在mysendget:"+result);System.out.println("JSONObject在mysendget:"+JSONObject.fromObject(result));} catch (Exception e) {System.out.println("发送GET请求出现异常!" + e);e.printStackTrace();}// 使用finally块来关闭输入流finally {try {if (in != null) {in.close();}} catch (Exception e2) {e2.printStackTrace();}}return JSONObject.fromObject(result).toString();//可以直接返回result}

下面是一个极其简易的接口,接口返回的是json格式的字符串

@RequestMapping(value="/testapi",method=RequestMethod.GET)@ResponseBodypublic String testapi(HttpServletRequest req,HttpServletResponse rpon){/*   *这是一个接口***/
//      System.out.println("调用了接口testapi并且获取到了参数param="+req.getParameter("param"));String s = "{\"name\":[{\"age\":25,\"height\":160,\"weight\":100,\"email\":\"1946898935\"},{\"age\":26,\"height\":178,\"weight\":140,\"email\":\"1234567\"}],\"address\":[{\"addressname\":\"福州市\"},{\"addressname\":\"厦门市\"}]}";//JSONObject json = JSONObject.fromObject(s);return s;}

实现api返回json数据并在调用api时处理json数据相关推荐

  1. 获得淘宝app商品详情原数据 API 返回值说明(item_get_app-淘宝app商品详情原数据)

    以下是获得淘宝商品详情 API 返回值说明.简单调用示例. 需要更多了解和测试调用请移步 http://console.open.onebound.cn/console/?i=Turbo API可输出 ...

  2. 【HMS Core】运动健康服务获取上床时间api返回 resultCode:1001 data:api permission exception

     问题描述: DATA_SESSION_CORE_SLEEP_BED 在运动健康app上手动输入的睡眠时间 获取睡眠详情可以获取到数据,但是获取上床时间api返回 resultCode:1001 da ...

  3. 时间维度表数据制作(调用API接口)

    学习电商数仓搭建时,遇到创建DIM层的时间维度表.这里时间维度表数据是十分固定的(一年一更新),要将这些数据提出出来生成文件以便导入DIM层的时间维度表中. 我们可以调用网络上免费的节假日API来实现 ...

  4. php如何调用api接口简单,在PHP中调用API接口|Post数据的方法

    PHP中调用接口 如:http://localhost/operate.php?act=get_user_list&type=json 在这里operate.php相当于一个接口,其中get_ ...

  5. 在SAP API hub自动生成使用ABAP调用API的胶水代码

    登录api.sap.com, 找到自己想用ABAP调用的API: API References里,点击Code Snippt, 即可看到API Hub自动生成的使用ABAP调用该API的代码: 要获取 ...

  6. 海康API返回Json值获取

    1.登录海康的管理平台,测试API,获取返回的Json字符串 2.将json字符串贴到如下网站中: http://www.bejson.com/convert/json2csharp/ ,将生成的类拷 ...

  7. python调用api做用户登录认证_(二)Python调用Zabbix api之从入门到放弃——登录并获取身份验证令牌...

    x.x.x.x可能是你的IP或者域名 访问流程概览: 1.首先登录 2.认证成功后zabbix server返回一个token 3.带着这个token去访问各种数据,做各种操作 4.完毕! 一.用RE ...

  8. 淘口令真实url API 返回值说明

    以下是淘宝/天猫获得淘宝商品详情 API 返回值说明.简单调用示例. 需要更多了解和测试调用请移步 http://console.open.onebound.cn/console/?i=Turbo A ...

  9. 淘宝/天猫邻家好货 API 返回值说明

    以下是淘宝邻家好货API 返回值说明.简单调用示例. 需要更多了解和测试调用请移步 http://console.open.onebound.cn/console/?i=Turbo API可输出JSO ...

最新文章

  1. TensorFlow中的Fashion MNIST图像识别实战
  2. flash TweenMax用法
  3. Hurst指数以及MF-DFA
  4. Android 笔记之 R 文件
  5. CF908G New Year and Original Order 数位DP
  6. 新手也能学会本地调试微信,natapp 官网映射
  7. else应输入一个语句是什么意思_Python学习基础篇 -4: Python中的转弯---分支语句
  8. 【debug】UnboundLocalError local variable a referenced before assignment
  9. linux open出现乱码,OpenStack 数据库中文乱码问题
  10. 朝九晚五的工作值得留恋吗?
  11. select支持手动输入
  12. CR, LF, CR/LF 回车 换行
  13. 学校源码php,闪灵CMS学校建站系统(含小程序) v5.0 bulid20200319_php免费源码
  14. 晶振工作原理与元件选型
  15. 基于ASP.NET的图书在线销售管理系统设计与实现
  16. Linkerd 2.11 服务网格Service Mesh 开箱
  17. android控制创维电视,创维电视怎么连接手机 创维电视连接手机的方法【详细介绍】...
  18. 读书笔记-《我的第一本算法书》
  19. 安装Apache Hadoop2.7.1教程
  20. 基于传感器的人体生命体征监控技术

热门文章

  1. 关于matlab的讨论
  2. WAP网站开发 比较全面的开发资料
  3. 递归法求解简单选择排序
  4. 论坛灌水机(续三 -- 验证码图形去噪)
  5. Java程序员从笨鸟到菜鸟之(二十一)java过滤器和监听器详解
  6. 单词背诵 2023.5.8
  7. 双系统(Windows 与 Linux)中如何设置默认启动系统
  8. java的workspace_创建eclipse新的workspace并设置workspace共享配置
  9. Android 关于wifi管理的代码
  10. 阿里云视频点播获取视频播放信息nodejs版