建立个人品牌,把你的名字变成钱 [登录·注册]

吕滔博客

首页 开发 运维 工具 摄影

Java项目中使用fastjson处理远程获取的json数据

开发 memory发布于April 19, 2017 标签: JAVA

fastjson对json字符串JSONObject和JSONArray互相转换操作示例
引入jar包进lib或者maven

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;

public class Jsontest {
public static void main(String[] args) {    
    String json="{\"name\":\"刘德华\",\"age\":35,\"some\":[{\"k1\":\"v1\",\"k2\":\"v2\"},{\"k3\":\"v3\",\"k4\":\"v4\"}]}";
    JSONObject jso=JSON.parseObject(json);//json字符串转换成jsonobject对象
    System.out.println("初始jsonObject:\n"+jso+"\n");
    JSONArray jsarr=jso.getJSONArray("some");//jsonobject对象取得some对应的jsonarray数组
    System.out.println("jsonObject里面的jsonarray:\n"+jsarr+"\n");
   JSONObject ao=jsarr.getJSONObject(0);//jsonarray对象通过getjsonobjext(index)方法取得数组里面的jsonobject对象
   System.out.println("jsonObject里面的jsonarray里面的第一个jsonobject:\n"+ao+"\n");
   String vString=ao.getString("k1");//jsonobject对象通过key直接取得String的值
   System.out.println("jsonObject里面的jsonarray里面的第一个jsonobject里的键值对对k1取值:\n"+vString+"\n");
}
}

如果json格式如下,获取token的方式如下

{"message":"result","status":200,"data":{"token":"A8E752FDA8bHmNOtbekBAICAFICCFUI"}}

java代码

JSONObject netjso=JSON.parseObject(json);
System.out.println("初始netjso----jsonObject:\n"+netjso+"\n");
JSONObject datas=JSON.parseObject(netjso.getString("data"));
String mytoken=datas.getString("token");

要是各位有更好的方法欢迎交流。

相关推荐

添加新评论

网站状态

  • 栏目分类:35个
  • 发布文章:1109篇
  • 用户评论:620条

最新回复

  • 香港服务器: 很详细,学习了
  • memory: 对,这个密钥最好是自己换一下。当然不嫌麻烦甚至可以考虑将密钥做到...
  • 小明明: 在加密的时候 秘钥固定不就可以机密了吗
  • 上海代理记账: 看起来代码有一些复杂的呀。。。
  • 香港云服务器: 站长不错,不错的干货
  • yet handsome: 我看了你的这个发现历史真的是惊人的相似,我们已经做到redis集...
  • memory: 好久不玩它们了,我的相关知识来自谷歌...
  • 于小鱼: 你好,想请教一些关于xen和kvm的问题。
  • memory: 如果将图片 base64_encode 后,再想取回以前的路径不...
  • 陈凌风: 我要区正常的路径显示怎么办?
  • genuiner: 牛逼
  • haitongz: 赞
  • memory: php64位? 这个我还真没有注意。。。回头再试试
  • Kngstr: 这个很简单,你用的PHP不是64位的,64位的dll只能在64位...
  • memory: 使用的是typecho.
  • GavinHsueh: 您好,我了解下您的博客是自己开发的么?看着很不错
  • 个人博客: 看看先
  • memory: 谢谢,已修正。
  • jrotty: 方法一中next后面少个'符号
  • daxia: mark