最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java對(duì)象和Json文本轉(zhuǎn)換工具類(lèi)的實(shí)現(xiàn)

 更新時(shí)間:2022年03月02日 08:30:45   作者:萌貓他爸  
Json?是一個(gè)用于Java對(duì)象和Json文本相互轉(zhuǎn)換的工具類(lèi),本文主要介紹了Java對(duì)象和Json文本轉(zhuǎn)換工具類(lèi),具有一定的參考價(jià)值,感興趣的可以了解一下

Json 是一個(gè)用于 Java 對(duì)象 和 Json 文本 相互轉(zhuǎn)換的工具類(lèi)。

安裝

下載源碼

git clone https://github.com/njdi/durian.git

編譯源碼

cd durian/

切換至最新版本(Tag),如:0.4,

git checkout 0.4

編譯安裝至本地 Maven 倉(cāng)庫(kù):

mvn clean package

添加依賴(lài)

SpringBoot 應(yīng)用使用 Config 時(shí),需要在 Maven pom.xml 中添加:

<dependency>
  <groupId>io.njdi</groupId>
  <artifactId>durian-common</artifactId>
  <version>${version}</version>
</dependency>

${version} 替換為具體的版本號(hào),如:0.4。

Java 對(duì)象

Java 對(duì)象支持如下類(lèi)型:基本數(shù)據(jù)類(lèi)型、數(shù)組、列表、字典。

基本數(shù)據(jù)類(lèi)型

  • Integer/int
  • Long/long
  • Float/float
  • Double/double
  • Boolean/boolean
  • String

數(shù)組

  • int[]
  • long[]
  • float[]
  • double[]
  • boolean[]
  • String[]

列表

  • List
  • List
  • List
  • List
  • List
  • List
  • List

字典

  • Map<String, Integer>
  • Map<String, Long>
  • Map<String, Float>
  • Map<String, Double>
  • Map<String, Boolean>
  • Map<String, String>
  • Map<String, Object>

類(lèi)

  • Class

Java 對(duì)象 轉(zhuǎn)換為 Json 文本

Java 對(duì)象 轉(zhuǎn)換為 Json 文本可以使用方法:

Json.toJson(obj)

基本數(shù)據(jù)類(lèi)型

String json;

json = Json.toJson(1);
json = Json.toJson(1.0);
json = Json.toJson(true);
json = Json.toJson("str");

數(shù)組

String 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"));

類(lèi)

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 文本 轉(zhuǎn)換為 Java 對(duì)象

Json 文本 轉(zhuǎn)換為 Java 對(duì)象時(shí),需要通過(guò)參數(shù)指定轉(zhuǎn)換對(duì)象的類(lèi)型信息:

Json.fromJson(json, Class)

或者

Json.fromJson(json, Type)

基本數(shù)據(jù)類(lèi)型

Json 文本 轉(zhuǎn)換為 基本數(shù)據(jù)類(lèi)型時(shí),需要使用 Type 指定轉(zhuǎn)換類(lèi)型,如:

int a = Json.fromJson("1", Json.JsonType.INT);

基本數(shù)據(jù)類(lèi)型 和 Type 的對(duì)應(yīng)關(guān)系:

  • Integer/int -> Json.JsonType.INT
  • Long/long -> Json.JsonType.LONG
  • Float/float -> Json.JsonType.FLOAT
  • Double/double -> Json.JsonType.DOUBLE
  • Boolean/boolean -> Json.JsonType.BOOLEAN
  • String -> Json.JsonType.STRING

數(shù)組

Json 文本 轉(zhuǎn)換為 數(shù)組時(shí),需要使用 Type 指定轉(zhuǎn)換數(shù)組的元素類(lèi)型,如:

int[] arr = Json.fromJson("[1, 2, 3]", Json.JsonType.INT_ARRAY);

數(shù)組的元素類(lèi)型 和 Type 的對(duì)應(yīng)關(guān)系:

  • int[] -> Json.JsonType.INT_ARRAY
  • long[] -> Json.JsonType.LONG_ARRAY
  • float[] -> Json.JsonType.FLOAT_ARRAY
  • double[] -> Json.JsonType.DOUBLE_ARRAY
  • boolean[] -> Json.JsonType.BOOLEAN_ARRAY
  • String[] -> Json.JsonType.STRING_ARRAY

列表

Json 文本 轉(zhuǎn)換為 列表時(shí),需要使用 Type 指定轉(zhuǎn)換列表的元素類(lèi)型,如:

List<Integer> list = Json.fromJson("[1, 2, 3]", Json.JsonType.INT_LIST);

列表的元素類(lèi)型 和 Type 的對(duì)應(yīng)關(guān)系:

  • List -> Json.JsonType.INT_LIST
  • List -> Json.JsonType.LONG_LIST
  • List -> Json.JsonType.FLOAT_LIST
  • List -> Json.JsonType.DOUBLE_LIST
  • List -> Json.JsonType.BOOLEAN_LIST
  • List -> Json.JsonType.STRING_LIST
  • List

字典

Json 文本 轉(zhuǎn)換為 字典時(shí),需要使用 Type 指定轉(zhuǎn)換字典的元素值類(lèi)型,如:

Map<String, Integer> map = Json.fromJson("{'a': 1, 'b': 2}", Json.JsonType.INT_MAP);
  • Map<String, Integer> -> Json.JsonType.INT_MAP
  • Map<String, Long> -> Json.JsonType.LONG_MAP
  • Map<String, Float> -> Json.JsonType.FLOAT_MAP
  • Map<String, Double> -> Json.JsonType.DOUBLE_MAP
  • Map<String, Boolean> -> Json.JsonType.BOOLEAN_MAP
  • Map<String, String> -> Json.JsonType.STRING_MAP
  • Map<String, Object> -> Json.JsonType.OBJECT_MAP

類(lèi)

Json 文本 轉(zhuǎn)換為 類(lèi)對(duì)象時(shí),需要使用 Class 指定轉(zhuǎn)換對(duì)象的類(lèi)型,如:

MyObject obj = Json.fromJson("{'a': 1, 'b': 2.0, 'c': true, d: 'str'}", MyObject.class);

 到此這篇關(guān)于Java對(duì)象和Json文本轉(zhuǎn)換工具類(lèi)的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)Java對(duì)象和Json文本轉(zhuǎn)換 內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • intellij idea中安裝、配置mybatis插件Free Mybatis plugin的教程詳解

    intellij idea中安裝、配置mybatis插件Free Mybatis plugin的教程詳解

    這篇文章主要介紹了intellij idea中安裝、配置mybatis插件Free Mybatis plugin的教程,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-09-09
  • Springmvc調(diào)用存儲(chǔ)過(guò)程,并返回存儲(chǔ)過(guò)程返還的數(shù)據(jù)方式

    Springmvc調(diào)用存儲(chǔ)過(guò)程,并返回存儲(chǔ)過(guò)程返還的數(shù)據(jù)方式

    這篇文章主要介紹了Springmvc調(diào)用存儲(chǔ)過(guò)程,并返回存儲(chǔ)過(guò)程返還的數(shù)據(jù)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • idea插件之mybatis log plugin控制臺(tái)sql的問(wèn)題

    idea插件之mybatis log plugin控制臺(tái)sql的問(wèn)題

    這篇文章主要介紹了idea插件之mybatis log plugin控制臺(tái)sql,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-09-09
  • Java Swing JSlider滑塊的實(shí)現(xiàn)示例

    Java Swing JSlider滑塊的實(shí)現(xiàn)示例

    這篇文章主要介紹了Java Swing JSlider滑塊的實(shí)現(xiàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12
  • 如何利用Stream改變list中特定對(duì)象的某一屬性

    如何利用Stream改變list中特定對(duì)象的某一屬性

    這篇文章主要介紹了如何利用Stream改變list中特定對(duì)象的某一屬性問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • Java集合框架入門(mén)之泛型和包裝類(lèi)

    Java集合框架入門(mén)之泛型和包裝類(lèi)

    Java 泛型(generics)是 JDK 5 中引入的一個(gè)新特性, 泛型提供了編譯時(shí)類(lèi)型安全檢測(cè)機(jī)制,該機(jī)制允許程序員在編譯時(shí)檢測(cè)到非法的類(lèi)型。泛型的本質(zhì)是參數(shù)化類(lèi)型,也就是說(shuō)所操作的數(shù)據(jù)類(lèi)型被指定為一個(gè)參數(shù)
    2021-10-10
  • SpringBoot中實(shí)現(xiàn)數(shù)據(jù)脫敏處理的方法詳解

    SpringBoot中實(shí)現(xiàn)數(shù)據(jù)脫敏處理的方法詳解

    項(xiàng)目開(kāi)發(fā)中,在處理敏感信息時(shí),數(shù)據(jù)脫敏是一項(xiàng)重要的安全措施,本文主要為大家介紹了如何在SpringBoot項(xiàng)目中進(jìn)行數(shù)據(jù)脫敏處理,有需要的可以了解下
    2025-03-03
  • Java?Stream?API詳解與使用示例詳解

    Java?Stream?API詳解與使用示例詳解

    Java?Stream?API?是一個(gè)功能強(qiáng)大的工具,適用于處理集合和數(shù)據(jù)流,本文全面介紹了?Java?Stream?API?的概念、功能以及如何在?Java?中有效地使用它進(jìn)行集合和數(shù)據(jù)流的處理,感興趣的朋友跟隨小編一起看看吧
    2024-05-05
  • 關(guān)于SpringBoot創(chuàng)建存儲(chǔ)令牌的媒介類(lèi)和過(guò)濾器的問(wèn)題

    關(guān)于SpringBoot創(chuàng)建存儲(chǔ)令牌的媒介類(lèi)和過(guò)濾器的問(wèn)題

    這篇文章主要介紹了SpringBoot創(chuàng)建存儲(chǔ)令牌的媒介類(lèi)和過(guò)濾器的問(wèn)題,需要在配置文件中,添加JWT需要的密匙,過(guò)期時(shí)間和緩存過(guò)期時(shí)間,具體實(shí)例代碼參考下本文
    2021-09-09
  • SpringCloud斷路器Hystrix原理及用法解析

    SpringCloud斷路器Hystrix原理及用法解析

    這篇文章主要介紹了SpringCloud斷路器Hystrix原理及用法解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-01-01

最新評(píng)論

鲁甸县| 乌兰浩特市| 凉山| 启东市| 漯河市| 漳平市| 德钦县| 郑州市| 崇礼县| 安阳市| 马关县| 凉山| 霞浦县| 富顺县| 玉门市| 洞口县| 乌拉特前旗| 孙吴县| 南乐县| 商城县| 木兰县| 东山县| 顺昌县| 桐乡市| 遵义市| 布拖县| 防城港市| 额济纳旗| 通榆县| 辛集市| 紫阳县| 英吉沙县| 德化县| 乌拉特后旗| 衡阳县| 香格里拉县| 礼泉县| 禹州市| 包头市| 永胜县| 宝丰县|