json数据转换为java对象,java字符串转换成json对象
目录
安装下载源码编译源码添加依赖爪哇对象基本数据类型数组列表字典类爪哇对象转换为数据文本基本数据类型数组列表字典类数据文本转换为爪哇对象基本数据类型数组列表字典类Json是一个用于Java 对象和Json 文本相互转换的工具类。
安装
下载源码
git克隆https://github.com/njdi/durian.git
编译源码
cd榴莲/切换至最新版本(标签),如:0.4,
饭桶结帐0.4编译安装至本地专家仓库:
传送非清洁包装
添加依赖
跳靴应用使用配置时,需要在Maven pom.xml中添加:
相关性groupIdio.njdi/groupId人造榴莲-公共/artifactId版本$ { version }/版本/相关性${version}替换为具体的版本号,如:0.4。
Java 对象
Java对象支持如下类型:基本数据类型、数组、列表、字典。
基本数据类型
Integer/int long/long float/float double/double boolean/boolean字符串
数组
int[]long[]float[]double[]boolean[]String[]
列表
列表列表列表列表列表列表
字典
MapString,IntegerMapString,LongMapString,FloatMapString,DoubleMapString,BooleanMapString,StringMapString,Object
类
类
Java 对象 转换为 Json 文本
Java对象转换为数据文本可以使用方法:
基本数据类型
字符串jsonJSON=JSON。托杰儿;JSON=JSON。托吉森(1.0);JSON=JSON。toj son(真);JSON=JSON。to JSON( str );
数组
字符串JSON JSON=JSON . tojson(new int[]{ 1,2,3 });JSON=JSON。tojson(new double[]{ 1.0,2.0,3.0 });JSON=JSON。tojson(new boolean[]{ true,false });JSON=JSON。tojson(new String[]{ 1 , 2.0 , true });
列
表
String json;json = Json.toJson(List.of(1, 2, 3));json = Json.toJson(List.of(1.0, 2.0, 3.0));json = Json.toJson(List.of(true, false));json = Json.toJson(List.of("1", "2.0", "true"));
字典
String json;json = Json.toJson(Map.of("key1", 1, "key2", 2));json = Json.toJson(Map.of("key1", 1.0, "key2", 2.0));json = Json.toJson(Map.of("key1", true, "key2", false));json = Json.toJson(Map.of("key1", "str", "key2", "2.0"));
类
public static class MyObject { private int a; private double b; private boolean c; private String d;}MyObject object = new MyObject();object.a = 1;object.b = 2.0;object.c = true;object.d = "str";String json = Json.toJson(object);
Json 文本 转换为 Java 对象
Json 文本 转换为 Java 对象时,需要通过参数指定转换对象的类型信息:
Json.fromJson(json, Class)
或者
Json.fromJson(json, Type)
基本数据类型
Json 文本 转换为 基本数据类型时,需要使用Type指定转换类型,如:
int a = Json.fromJson("1", Json.JsonType.INT);
基本数据类型 和 Type 的对应关系:
Integer/int -> Json.JsonType.INTLong/long -> Json.JsonType.LONGFloat/float -> Json.JsonType.FLOATDouble/double -> Json.JsonType.DOUBLEBoolean/boolean -> Json.JsonType.BOOLEANString -> Json.JsonType.STRING
数组
Json 文本 转换为 数组时,需要使用Type指定转换数组的元素类型,如:
int[] arr = Json.fromJson("[1, 2, 3]", Json.JsonType.INT_ARRAY);
数组的元素类型 和 Type 的对应关系:
int[] -> Json.JsonType.INT_ARRAYlong[] -> Json.JsonType.LONG_ARRAYfloat[] -> Json.JsonType.FLOAT_ARRAYdouble[] -> Json.JsonType.DOUBLE_ARRAYboolean[] -> Json.JsonType.BOOLEAN_ARRAYString[] -> Json.JsonType.STRING_ARRAY
列表
Json 文本 转换为 列表时,需要使用Type指定转换列表的元素类型,如:
List<Integer> list = Json.fromJson("[1, 2, 3]", Json.JsonType.INT_LIST);
列表的元素类型 和 Type 的对应关系:
List-> Json.JsonType.INT_LISTList-> Json.JsonType.LONG_LISTList-> Json.JsonType.FLOAT_LISTList-> Json.JsonType.DOUBLE_LISTList-> Json.JsonType.BOOLEAN_LISTList-> Json.JsonType.STRING_LISTList
字典
Json 文本 转换为 字典时,需要使用Type指定转换字典的元素值类型,如:
Map<String, Integer> map = Json.fromJson("{a: 1, b: 2}", Json.JsonType.INT_MAP);
Map<String, Integer> -> Json.JsonType.INT_MAPMap<String, Long> -> Json.JsonType.LONG_MAPMap<String, Float> -> Json.JsonType.FLOAT_MAPMap<String, Double> -> Json.JsonType.DOUBLE_MAPMap<String, Boolean> -> Json.JsonType.BOOLEAN_MAPMap<String, String> -> Json.JsonType.STRING_MAPMap<String, Object> -> Json.JsonType.OBJECT_MAP
类
Json 文本 转换为 类对象时,需要使用Class指定转换对象的类型,如:
MyObject obj = Json.fromJson("{a: 1, b: 2.0, c: true, d: str}", MyObject.class);
到此这篇关于Java对象和Json文本转换工具类的实现的文章就介绍到这了,更多相关Java对象和Json文本转换 内容请搜索盛行IT以前的文章或继续浏览下面的相关文章希望大家以后多多支持盛行IT!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。