java fastjson:Map与json以及JSONObject ,JSONObject与String互转
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject ;
import com.alibaba.fastjson.JSONPath;
import com.jayway.jsonpath.Configuration;
import com.jayway.jsonpath.JsonPath; import java.util.Map; public class fastTestJson { static void type(Object o){
print(o.getClass().getName());
} public static void main(String[] args) {
String obj = "{\"data\":{\"access_token\":\"5a7040ccf66bafd06acd39b6f61c19230eaba426755509646d6da23ddd9fb206\",\"expires_second\":36000},\"rlt_code\":\"HH0000\",\"rlt_msg\":\"成功\"}";
;
JSONObject JS = JSONObject.parseObject(obj);
getJsonValue(JS);
// test jsonArray
String test = "{\"success\":true,\"data\":[{\"building_id\":\"***\",\"building_num\":\"**\",\"room_name\":\"**\",\"door_name\":\"**\",\"electric\":\"**\"}]}";
JSONObject jsonObject = JSON.parseObject(test);
print(jsonObject);
JSONArray data = jsonObject.getJSONArray("data");
print(data);
JSONArray jsonArray = (JSONArray) JSONPath.read(jsonObject.toJSONString(), "$.data.room_name");
Object o = jsonArray.get(0);
type(o);
} /** rewrite sys.out */
static void print(Object text) {
System.out.println(text);
} /** 字符串string 转 map */
static Map StringTOMap(String jsonStr){
return (Map)JSON.parse(jsonStr);
} /** map 转 string by fastjson */
static String mapToString (Map map ){
return JSON.toJSONString(map);
} /** json 对象转map */
static Map JSONObjectToMap(JSONObject o){
// jsonObject.toString()
Map params = JSON.parseObject(o.toString());
return params;
}
/** map 转 json对象 */
static JSONObject mapToJson(Map map){ JSONObject jsonObject = new JSONObject(map);
return jsonObject;
} /** 字符串 转都JSONObject对象*/
static JSONObject jsonObject (String jsonstr){
return JSONObject.parseObject(jsonstr);
}
/** json对象转字符串 str*/
static String getStr(JSONObject jsonObject){
return jsonObject.toJSONString();
} static void getJsonValue(JSONObject jsonObject){
/** {"rlt_code":"HH0000","data":{"access_token":"5a7040ccf66bafd06acd39b6f61c19230eaba426755509646d6da23ddd9fb206",
* "expires_second":36000},"rlt_msg":"成功"} */ String data= jsonObject.getString("data"); //get String value of json object
print(data);
JSONObject js = JSONObject.parseObject(data); } static Object jsonPathRead(String json){
// to get just one time read json object .
Object document = Configuration.defaultConfiguration().jsonProvider().parse(json);
String context1 = JsonPath.read(document,"$..name");
JSONArray context2 =JsonPath.read(document,"$..data");
return context1;
} }
java fastjson:Map与json以及JSONObject ,JSONObject与String互转的更多相关文章
- JS json对象(Object)和字符串(String)互转方法
[JS json对象(Object)和字符串(String)互转方法] 参考:https://blog.csdn.net/wenqianla2550/article/details/78232706 ...
- JAVA array,map 转 json 字符串
public class User { private String username; private String password; public String getUsername() { ...
- fastjson map转json
Map map = new HashMap(); map.put("name", "老三"); map.put("age", 12); St ...
- java把map转json
JSONUtils.toJSONString(requestMap); com.alibaba.fastjson.JSON <!-- https://mvnrepository.com/a ...
- java 字符串解析为json 使用org.json包的JSONObject+JSONArray
参考: https://blog.csdn.net/xingfei_work/article/details/76572550 java中四种json解析方式 JSONObject+JSONArray ...
- java map转json servlet response
1.手写一个map转json的类 1.1 调用方式 //给前端放回json数据 Map<String, Object> map = new HashMap<>(); map.p ...
- java List<Map> 排序问题
Collections.sort(order_from_list, new Comparator<Map<Object, Object>>() { public int com ...
- java的map取值
第一种方法根据键值的名字取值 import java.util.HashMap; import java.util.Map; /** * @param args */ public stat ...
- JSONObject.fromObject(map)(JSON与JAVA数据的转换)
JSON与JAVA数据的转换(JSON 即 JavaScript Object Natation,它是一种轻量级的数据交换格式,非常适合于服务器与 JavaScript 的交互.) 上一篇文章中有这么 ...
随机推荐
- bootstrap 兼容 IE8
在 html 中引用 <!-- bootstrap 兼容 IE8 --> <script src="../../jsapi/js/html5shiv.min.js" ...
- 封装的Redis队列
封装的Redis队列 MyRedisQueue.py #!usr/bin/env python2.7 # -*- coding: utf-8 -*- import redis class RedisQ ...
- DOM节点的属性和方法
DOM DOM 是 JavaScript 操作网页的接口,全称为“文档对象模型”(Document Object Model).它的作用是将网页转为一个 JavaScript 对象,从而可以用脚本进行 ...
- Cassandra学习&命令行实践
准备 按照Cassandra集群部署搭建两台测试机,环境信息如下: 名称 IP 数据中心名称 node-01 192.168.198.130 datacenter1 node-02 192.168.1 ...
- windows下web端测试环境搭建(tomcat+oracle)
一.安装oracle数据库 1.关闭防火墙.360安全卫士,运行安装程序:Setup.exe,然后下一步...... 2.安装完成后,检查服务是否已启动 3.cmd输入验证登录成功:sqlplus s ...
- TP框架中生成带背景带文字的二维码
首先下载一个phpqrcode的包放到/vendor目录下 链接:https://pan.baidu.com/s/18jV9DypYB_PHDhD6C0iedQ 提取码:qxuo 如果只是单纯生成二维 ...
- PAT (Basic Level) Practice (中文)1031 查验身份证 (15 分)
一个合法的身份证号码由17位地区.日期编号和顺序编号加1位校验码组成.校验码的计算规则如下: 首先对前17位数字加权求和,权重分配为:{7,9,10,5,8,4,2,1,6,3,7,9,10,5,8, ...
- HTML5,从零开始
一.网页的组成部分 <!DOCTYPE html> <html> <head> <title>这是标题</title> <meta c ...
- python3练习100题——056
题目:画图,学用circle画圆形. 可以用turtle.circle画图. import turtle turtle.setup(0.6,0.6) turtle.pensize(3) turtle. ...
- div中宽高度自适应文字换行居中问题解决
<html> <head> <meta charset="UTF-8"/> <title>div中宽高度自适应文字换行居中demo& ...