日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

jackson學(xué)習(xí)之一:基本信息

 頭號碼甲 2021-05-14

內(nèi)容:所有原創(chuàng)文章分類匯總及配套源碼,涉及Java、Docker、Kubernetes、DevOPS等;

系列文章匯總

  • jackson學(xué)習(xí)之一:基本信息

  • jackson學(xué)習(xí)之二:jackson-core

  • jackson學(xué)習(xí)之三:常用API操作

  • jackson學(xué)習(xí)之四:WRAP_ROOT_VALUE(root對象)

  • jackson學(xué)習(xí)之五:JsonInclude注解

  • jackson學(xué)習(xí)之六:常用類注解

  • jackson學(xué)習(xí)之七:常用Field注解

  • jackson學(xué)習(xí)之八:常用方法注解

  • jackson學(xué)習(xí)之九:springboot整合(配置文件)

  • jackson學(xué)習(xí)之十(終篇):springboot整合(配置類)

關(guān)于jackson

本文是《jackson學(xué)習(xí)》系列的第一篇,先來一起了解jackson:

  1. 按照官網(wǎng)所述,jackson是java技術(shù)棧內(nèi)最好的JSON解析工具(best JSON parser for Java);

  2. 除了JSON解析,jackson還是個數(shù)據(jù)處理工具集:基于流的解析庫和生成庫、數(shù)據(jù)綁定、數(shù)據(jù)格式化模塊(Avro、XML、Protobuf、YAML等);

版本信息

  1. jackson共有1.x和2.x兩個版本系列,其中1.x已廢棄不再有版本發(fā)布,2.x是活躍版本;

  2. 1.x和2.x不兼容,如果您的代碼已經(jīng)使用了1.x,現(xiàn)在想改用2.x,您就必須修改使用jackson的那部分代碼;

  3. 雖然不兼容,但是1.x和2.x不沖突,您的項(xiàng)目可以在pom.xml中同時依賴這兩個版本,假設(shè)您原有三處代碼調(diào)用了1.x的API,現(xiàn)在可以把一處改成2.x的,另外兩處維持不變,這個特性適合將項(xiàng)目逐步從1.x升級到2.x(This is by design and was chosen as the strategy to allow smoother migration from 1.x to 2.x.);

  4. 2.x系列版本中,有的版本已關(guān)閉(除非bug或者安全問題才會發(fā)布新的小版本),有的版本還處于活躍狀態(tài),

在這里插入圖片描述

三個核心模塊

jackson有三個核心模塊,如下,括號內(nèi)是maven的artifactId:

  1. Streaming(jackson-core):低階API庫,提供流式解析工具JsonParser,流式生成工具JsonGenerator;

  2. Annotations(jackson-annotations):jackson注解;

  3. Databind (jackson-databind):基于java對象的序列化、反序列化能力,需要前面兩個模塊的支持才能實(shí)現(xiàn);

低階API庫的作用

  1. 當(dāng)我們用jackson做JSON操作時,常用的是Databind模塊的ObjectMapper類,對處于核心位置的jackson-core反倒是很少直接用到,那么該模塊有什么作用呢?

  2. 如下圖,BeanSerializer是jackson-databind的功能類,其serialize方法負(fù)責(zé)將java對象轉(zhuǎn)為JSON,方法中的處理邏輯就是調(diào)用JsonGenerator的API,而JsonGenerator就是jackson-core中負(fù)責(zé)序列化的主要功能類:

在這里插入圖片描述
3. 可見Databind模塊的ObjectMapper類提供給我們的API,其底層操作是基于jackson-core實(shí)現(xiàn)的;
至此,我們對jackson已有了基本了解,接下來的文章會開始一系列的實(shí)戰(zhàn),通過實(shí)戰(zhàn)來掌握和理解這套優(yōu)秀的工具;

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多