Java:JSON和Map相互转换
Java:JSON与Map相互转换
需要jar包:jackson-core-2.6.0.jar,jackson-databind-2.6.0.jar,jackson-annotations-2.6.0.jar
1. JSON String to Map
package com.inspur.trc.util;
import java.util.HashMap;
import java.util.Map;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
public class Json2Map {
public static void main(String[] args) {
String json = "{\"name\":\"zitong\", \"age\":\"26\"}";
Map<String, String> map = new HashMap<String, String>();
ObjectMapper mapper = new ObjectMapper();
try{
map = mapper.readValue(json, new TypeReference<HashMap<String,String>>(){});
System.out.println(map);
}catch(Exception e){
e.printStackTrace();
}
}
}
运行结果:
{age=26, name=zitong}
2. Map to JSON String
package com.inspur.trc.util;
import java.util.HashMap;
import java.util.Map;
import com.fasterxml.jackson.databind.ObjectMapper;
public class Map2Json {
public static void main(String[] args){
try{
ObjectMapper mapper = new ObjectMapper();
String json = "";
Map<String, String> map = new HashMap<String,String>();
map.put("name", "zitong");
map.put("age", "26");
json = mapper.writeValueAsString(map);
System.out.println(json);
}catch(Exception e){
e.printStackTrace();
}
}
}
运行结果:
{"age":"26","name":"zitong"}
3. Map to JSON File
package com.inspur.trc.util;
import java.io.File;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.fasterxml.jackson.databind.ObjectMapper;
public class Map2JsonFile {
public static void main(String[] args) {
ObjectMapper mapper = new ObjectMapper();
Map<String, Object> map = new HashMap<String, Object>();
map.put("name", "zitong");
map.put("age", 29);
List<Object> list = new ArrayList<Object>();
list.add("music");
list.add("football");
map.put("hobby", list);
try {
mapper.writeValue(new File("F:/user.json"), map);
} catch (Exception e) {
e.printStackTrace();
}
}
}
运行结果:F:/user.json
{"age":29,"name":"zitong","hobby":["music","football"]}
4. JSON File To Map
package com.inspur.trc.util;
import java.io.File;
import java.util.List;
import java.util.Map;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
public class JsonFile2Map {
public static void main(String[] args) {
try{
ObjectMapper mapper = new ObjectMapper();
Map<String, Object> map = mapper.readValue(new File("F:/user.json"),new TypeReference<Map<String, Object>>(){});
System.out.println("name: " + map.get("name"));
System.out.println("age: " + map.get("age"));
@SuppressWarnings("unchecked")
List<String> list = (List<String>)map.get("hobby");
System.out.print("hobby: ");
for(String str : list){
System.out.print(str+ " ");
}
}catch(Exception e){
e.printStackTrace();
}
}
}
运行结果:
name: zitong
age: 29
hobby: music football
Java:JSON和Map相互转换的更多相关文章
- java json与map互相转换(二)
java json与map互相转换(二) CreationTime--2018年7月16日15点09分 Author:Marydon 1.准备工作 所需jar包: commons-beanutil ...
- java json与map互相转换(一)
java json与map互相转换(一) CreationTime--2018年7月16日 Author:Marydon 1.准备工作 所需jar包:json-20180130.jar impor ...
- java JSON 和 Object 相互转换
1.导入 jackson jar <dependency> <groupId>com.fasterxml.jackson.core</groupId> <ar ...
- JAVA中利用反射机制进行对象和Map相互转换的方法
JAVA的反射机制主要作用是用来访问对象的属性.方法等等.所以,JAVA中对象和Map相互转换可以利用JAVA的反射机制来实现.例子如下: 一.对象转Map的方法 public static Map& ...
- java中对象转json,json转list,json转map
在IDEA中的springboot项目里写的一个测试例子,新建User类,四个字段,Long id , String password,String userName,int age; 以及带参构造, ...
- java fastjson:Map与json以及JSONObject ,JSONObject与String互转
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson ...
- Java json串生成及转bean
package com; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import j ...
- java json 的生成和解析 --json-lib
类(java json的解析和生成): import java.util.HashMap; import java.util.Map; import net.sf.json.JSONArray; im ...
- Java json工具类,jackson工具类,ObjectMapper工具类
Java json工具类,jackson工具类,ObjectMapper工具类 >>>>>>>>>>>>>>> ...
随机推荐
- java项目路径总结,java.io.File支持的路放方式
1.直接输入路径 已maven项目为例,直接输入路径的4种方式,即是File类支持的方式: /** * FileOutpurStream以字节数组方式写入文件 * @throws IOExceptio ...
- jQuery循环之each()
/** *定义和用法:$(selector).each(function(index,element)) *each()函数会对每个匹配到的元素运行函数(返回false可终止循环). *each()函 ...
- H3C 无线交换机的数据转发原理
- 接触手机脚本编程------基于触动精灵的lua编程
Auto.js好用多了,还不用root直接能用,我为什么学这个呢..... 最近因为学习需要开始接触一门新的脚本语言,我更深刻的发现了,语言只是一种工具,重要的是解决问题的思维,由于这次是需要我快速掌 ...
- Docker版zabbix
1. docker-compose docker-compose :容器自带的编排工作,可以通过yaml编排文件,将容器要启动的命令写入文件,然后再利用docker-compose run file. ...
- 树莓派使用root操作图形界面使用自带的文件管理器
使用pi用户通过VNC登录图形界面之后,在需要修改一些文件则时提示权限不够, 命令行下使用sudo 运行就可以了.或者直接用root账户. 修改管理员密码:sudo passwd root 修改启用管 ...
- Bounding Box回归
简介 Bounding Box非常重要,在rcnn, fast rcnn, faster rcnn, yolo, r-fcn, ssd,到今年cvpr最新的yolo9000都会用到. 先看图 对于上图 ...
- 通过日志解决问题的一个小例子-http换端口
这个例子是将http服务的监听端口改为8999后重启服务报错: 此时查看日志/var/log/message,显示如下: 如红笔所示轨迹得到设置端口类型的命令:semanage port -a -t ...
- 《Java虚拟机JVM故障诊断与性能优化》读书笔记(未完待续)
前言: 对于JVM学习用处的理解:我们程序员写的代码,虽说是放在服务器(linux)系统上的.但是很多时候,受JVM的影响,其实程序并没有发挥出服务器的最大性能.这时候,JVM就成为了瓶颈了.有瓶颈就 ...
- 关于C++中extern的简单笔记
extern可以实现多文件共享同一个变量.const常量.函数. 下面结合几个例子来讲一下extern的相关性质(下述皆为多文件编译): 例1: //file1.cpp #include<ios ...