java json与map互相转换(一)

 

java json与map互相转换(一)

CreationTime--2018年7月16日

Author:Marydon

1.准备工作

  所需jar包:json-20180130.jar

import org.json.JSONObject;

2.json转map

  用法:JSONObject.toMap();

3.map转json

  用法:new JSONObject(map);

4.举例说明

public static void main(String[] args) {
    JSONObject jo = new JSONObject();
    jo.put("method_code", "JMJKK0101");
    jo.put("identifier", "000000000000");
    jo.put("timestamp", "");
    jo.put("version", "Ver1.1");
    jo.put("area_code", "00000000");
    jo.put("access_type", "0");
    jo.put("access_id", "0101010101");
    jo.put("complete_key", "HMACSHA1");
    jo.put("complete_str", "摘要加密字符串");
    jo.put("param_key", "AES");
    jo.put("param_set", "请求业务参数加密字符串"); 
    // json-->Map
    Map<String, Object> map = jo.toMap();
    System.out.println(map);
    // Map-->json
    JSONObject jo2 = new JSONObject(map);
    System.out.println(jo2);
}

 

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java中没有结构体的概念,但是可以使用类或者对象来模拟结构体的功能。对于类或者对象转换JSON格式的字符串,可以使用Jackson、Gson等第三方库来实现。 下面是一个使用Jackson将Java对象转换JSON格式的示例: ```java import com.fasterxml.jackson.databind.ObjectMapper; public class Person { private String name; private int age; private String address; // 省略 getter 和 setter 方法 public static void main(String[] args) throws Exception { ObjectMapper mapper = new ObjectMapper(); Person person = new Person(); person.setName("张三"); person.setAge(18); person.setAddress("北京市"); String jsonStr = mapper.writeValueAsString(person); System.out.println(jsonStr); } } ``` 输出结果如下: ``` {"name":"张三","age":18,"address":"北京市"} ``` 对于JSON格式的字符串转换Java对象或者Map,也可以使用Jackson库来实现。 下面是一个使用Jackson将JSON格式的字符串转换Java对象的示例: ```java import com.fasterxml.jackson.databind.ObjectMapper; public class Person { private String name; private int age; private String address; // 省略 getter 和 setter 方法 public static void main(String[] args) throws Exception { ObjectMapper mapper = new ObjectMapper(); String jsonStr = "{\"name\":\"张三\",\"age\":18,\"address\":\"北京市\"}"; Person person = mapper.readValue(jsonStr, Person.class); System.out.println(person.getName()); System.out.println(person.getAge()); System.out.println(person.getAddress()); } } ``` 输出结果如下: ``` 张三 18 北京市 ``` 对于JSON格式的字符串转换Map,也可以使用Jackson库来实现。 下面是一个使用Jackson将JSON格式的字符串转换Map的示例: ```java import com.fasterxml.jackson.databind.ObjectMapper; import java.util.Map; public class Test { public static void main(String[] args) throws Exception { ObjectMapper mapper = new ObjectMapper(); String jsonStr = "{\"name\":\"张三\",\"age\":18,\"address\":\"北京市\"}"; Map<String, Object> map = mapper.readValue(jsonStr, Map.class); System.out.println(map.get("name")); System.out.println(map.get("age")); System.out.println(map.get("address")); } } ``` 输出结果如下: ``` 张三 18 北京市 ``` 除了Jackson库,还可以使用Gson库来实现Java对象和JSON格式的字符串之间的转换。Gson库的用法与Jackson库类似,这里不再赘述。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值