map转jsonjava的简单介绍
更新:2022-11-15 20:27
本文目录一览:
- java怎么把map转换为json
- [java 怎么把map转为json](#java 怎么把map转为json)
- 如何把map转成json字符串
- 如何构建json串,并将map转为jsonObject对象的三种方式(scala)
- [java 怎样将map转换为json](#java 怎样将map转换为json)
- map与json的转换
java怎么把map转换为json
String jsons="{'a':'1','b':'2'}";
Map<String, Object> jsonmap = new HashMap<String, Object>();
jsonmap = json.setterObject(jsons, json.setMapType(HashMap.class, String.class, Object.class)); // json转map
ObjectMapper mapper = new ObjectMapper();
Object dataparamtemp = jsonmap.get("dataparam");
String dataparam = mapper.writeValueAsString(dataparamtemp); // Map转json
需要 jackson 的支持。当然,这里只是我截取我使用的一点例子,这个需要 jar 包的支持,我建议你直接搜索: Java jackson map 与 json 相互转化,而且也可以是 bean 转 json、list 转 json 都是可以的。
java 怎么把map转为json
①如果你是 Maven 工程,添加下面依赖:
<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<version>2.4</version>
<classifier>jdk15</classifier>
</dependency>
②如果不是 Maven 工程,我帮你把 jar 包上传到云盘了,你下载后放到 lib 下面。
使用方法
package test;
import java.util.HashMap;
import java.util.Map;
import net.sf.json.JSONObject;
public class Test01 {
public static void main(String[] args) {
Map map = new HashMap();
map.put("1", "bb");
map.put("2", "cc");
map.put("3", "dd");
JSONObject jsonObject = JSONObject.fromObject(map);
System.out.println(jsonObject);
}
}
如何把map转成json字符串
- 如图所示新建一个 demo 作为测试。
- 这里是第一种方法,也是推荐的一个方法,需要引入如图所示的 jar 包(这里是 Java 项目引入 jar)。
- 如图所示是全部的代码,首先创建一个 map,使用转换方法进行转换后转成字符串格式输出。
- 点击运行该 Java 文件,即可在输出控制台看到转换成功的字符串。
- 这是第二种方法,需要引入的 jar 包比较多,如果引入不全,在运行的时候会报不同的错。
- 然后使用的是
JSONObject.fromObject()
方法进行转换的,输出结果和上一个方法一致。
如何构建json串,并将map转为jsonObject对象的三种方式(scala)
众所周知,kafka 中存储的数据是经过 BASE64 加密后的 jsonObject,因此从 kafka 中读取的数据经过 base64 解码,得到的是 json 串,利用 JSONObject 的方法可以对 json 串进行解析,拿到对应的数据。那么要如何将 scala 对象或者 java 对象转换为 JsonObject 对象或 JSONObject 对象呢?(注意:JsonObject 对象和 JSONObject 对象不同,调用的 API 也不一样) 三种转换方式依赖的包源码都是用 JAVA 编写,所以构建过程如下:
三种将 java 对象转换为 jsonObject 对象的开源包有:
- Genson:是一个完全的 Java 和 JSON 转换的类库,提供了全面的数据绑定、流操作等。基于 Apache 2.0 协议发布。转换结果为 JsonObject 对象。
- 使用需要先导入 Jar 包:
import com.google.gson.{Gson, JsonParser}
- 引入依赖:
<dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactId> <version>2.2.4</version> </dependency>
- 使用需要先导入 Jar 包:
- Fastjson:是一个 Java 库,可以将 Java 对象转换为 JSON 格式,当然它也可以将 JSON 字符串转换为 Java 对象。
- 导入 jar 包:
import com.alibaba.fastjson.JSON
- 引入依赖:
<dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.8</version> </dependency>
- 导入 jar 包:
- net.sf.json-lib 方式:
- 导入 jar 包:
import net.sf.json.JSONObject
- 引入依赖:
<dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json-lib-ext-spring</artifactId> <version>1.0.2</version> </dependency>
- 导入 jar 包:
java 怎样将map转换为json
1. jar包导入
①如果你是 Maven 工程,添加下面依赖:
<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<version>2.4</version>
<classifier>jdk15</classifier>
</dependency>
2. 使用方法
package test;
import java.util.HashMap;
import java.util.Map;
import net.sf.json.JSONObject;
public class Test01 {
public static void main(String[] args) {
Map<String, String> map = new HashMap<String, String>();
map.put("1", "bb");
map.put("2", "cc");
map.put("3", "dd");
JSONObject jsonObject = JSONObject.fromObject(map);
System.out.println(jsonObject);
}
}
输出结果如下:
{"3":"dd","2":"cc","1":"bb"}
map与json的转换
使用 fastjson 实现 map 与 json 的互相转换:
new Date() 是 java.util.Date
这个里面是时间处理的参数
JSON.toJSONString(map,
SerializerFeature.DisableCircularReferenceDetect,
SerializerFeature.WriteDateUseDateFormat)
结果: 设置 JsonObject 的默认时间格式:
JSONObject.DEFFAULT_DATE_FORMAT="yyyy-MM-dd";
结果: