com.github.fangjinuo.easyjson.supports:easyjson-supports

A JSON Facade: Supports adapter any json library to gson, jackson, fastjson etc. Provides a unified JSON access API, you can adapter any JSON library to Gson, Jackson, FastJson with easyjson.

License

License

Categories

Categories

JSON Data
GroupId

GroupId

com.github.fangjinuo.easyjson.supports
ArtifactId

ArtifactId

easyjson-supports
Last Version

Last Version

3.0.2
Release Date

Release Date

Type

Type

pom
Description

Description

A JSON Facade: Supports adapter any json library to gson, jackson, fastjson etc. Provides a unified JSON access API, you can adapter any JSON library to Gson, Jackson, FastJson with easyjson.

Download easyjson-supports

Filename Size
easyjson-supports-3.0.2.pom 691 bytes
Browse

How to add to project

<!-- https://jarcasting.com/artifacts/com.github.fangjinuo.easyjson.supports/easyjson-supports/ -->
<dependency>
    <groupId>com.github.fangjinuo.easyjson.supports</groupId>
    <artifactId>easyjson-supports</artifactId>
    <version>3.0.2</version>
    <type>pom</type>
</dependency>
// https://jarcasting.com/artifacts/com.github.fangjinuo.easyjson.supports/easyjson-supports/
implementation 'com.github.fangjinuo.easyjson.supports:easyjson-supports:3.0.2'
// https://jarcasting.com/artifacts/com.github.fangjinuo.easyjson.supports/easyjson-supports/
implementation ("com.github.fangjinuo.easyjson.supports:easyjson-supports:3.0.2")
'com.github.fangjinuo.easyjson.supports:easyjson-supports:pom:3.0.2'
<dependency org="com.github.fangjinuo.easyjson.supports" name="easyjson-supports" rev="3.0.2">
  <artifact name="easyjson-supports" type="pom" />
</dependency>
@Grapes(
@Grab(group='com.github.fangjinuo.easyjson.supports', module='easyjson-supports', version='3.0.2')
)
libraryDependencies += "com.github.fangjinuo.easyjson.supports" % "easyjson-supports" % "3.0.2"
[com.github.fangjinuo.easyjson.supports/easyjson-supports "3.0.2"]

Dependencies

compile (1)

Group / Artifact Type Version
com.github.fangjinuo.langx : langx-java jar 2.8.3

provided (1)

Group / Artifact Type Version
org.slf4j : slf4j-api jar 1.7.0

test (1)

Group / Artifact Type Version
junit : junit Optional jar 4.12

Project Modules

  • easyjson-supports-feign

JSON

License

Build Status Codacy Badge

gson fastjson jackson

JDK

Github地址

Gitee地址

maven

easyjson

Provides a unified JSON access API, you can adapter any JSON library to Gson, Jackson, FastJson with easyjson.

Modules

  • easyjson-core: 这是个核心模块,可以直接去用这个模块的API,就像使用slf4j的logger API一样。
  • easyjson-XXX: 使用它可以将其他的JSON库适配给XXX,由XXX来做具体的json操作。
    1. easyjson-gson: 使用它可以将其他的JSON库适配给Gson
    2. easyjson-jackson: 使用它可以将其他的JSON库适配给Jackson
    3. easyjson-fastjson: 使用它可以将其他的JSON库适配给 Fastjson
  • XXXX-to-easyjson: 有很多这样的模块,它们是用于将xxx JSON库通过easyjson-core,适配给底层JSON实现库。
    1. fast-to-easyjson: 使用它可以将其他的安卓下的org.json库通过easyjson适配给 gson, jackson
    2. android-to-easyjson: 使用它可以将其他的Android下的org.json库通过easyjson适配给fastjson, gson, jackson
    3. boonjson-to-easyjson: 使用它可以将安卓下的boon-json(io.advantageous.boon.json)库通过easyjson适配给fastjson, gson, jackson
    4. jsonlib-to-easyjson: 使用它可以将json-lib (net.sf.json)通过easyjson适配给fastjson, gson, jackson
    5. jsonsmart-to-easyjson: 使用它可以将json-smart (net.minidev.json)通过easyjson适配给fastjson, gson, jackson
    6. minimaljson-to-easyjson: 使用它可以将minimal-json (com.eclipsesource.json)通过easyjson适配给fastjson, gson, jackson
    7. moshi-to-easyjson: 使用它可以将moshi-json (com.squareup.moshi)通过easyjson适配给fastjson, gson, jackson
    8. orgjson-to-easyjson: 使用它可以将org.json通过easyjson适配给fastjson, gson, jackson
    9. progsbase-to-easyjson: 使用它可以将progsbase json通过easyjson适配给fastjson, gson, jackson
    10. simplejson-to-easyjson: 使用它可以将json-simple通过easyjson适配给fastjson, gson, jackson
  • easyjson-examples: test cases
  • easyjson-test: test cases v2

Usage

Key Features

  1. Supports gson, fastjson, jackson, Progsbase ...
  2. Supports tree model, stream model
  3. Control whether serialize null
  4. Convert ON|OFF, 1|0 to Boolean
  5. Serialize or deserialize a Enum based on custom field
  6. Serialize or deserialize a Date using specified pattern | date format
  7. Supports custom exclusion rule, for examples: @Ignore, transient, specified modifier ...
  8. Get the JSONBuilder with zero configuration
  9. Switch the underlying implement without any code change
  10. Supports JDK 1.6+

Quick Start

installation

easyjson facade JSON Implementation
<dependency>
    <groupId>com.github.fangjinuo.easyjson</groupId>
    <artifactId>easyjson-core</artifactId>
    <version>${version}/version>
</dependency>
                
<dependency>
    <groupId>com.github.fangjinuo.easyjson</groupId>
    <artifactId>easyjson-gson</artifactId>
    <version>${version}
</dependency>
                
<dependency>
    <groupId>com.github.fangjinuo.easyjson</groupId>
    <artifactId>easyjson-jackson</artifactId>
    <version>${version}/version>
</dependency>
                
<dependency>
    <groupId>com.github.fangjinuo.easyjson</groupId>
    <artifactId>easyjson-fastjson</artifactId>
    <version>${version}/version>
</dependency>
                
JSON Library Maven version Adapter
Android json
<dependency>
    <groupId>com.vaadin.external.google</groupId>
    <artifactId>android-json</artifactId>
    <version>0.0.20131108.vaadin1</version>
</dependency>
                
0.0.20131108.vaadin
<dependency>
    <groupId>com.github.fangjinuo.easyjson</groupId>
    <artifactId>android-to-easyjson</artifactId>
    <version>${version}</version>
</dependency>
                
fastjson
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>fastjson</artifactId>
    <version>1.2.58</version>
</dependency>
                
1.2.58
<dependency>
    <groupId>com.github.fangjinuo.easyjson</groupId>
    <artifactId>fastjson-to-easyjson</artifactId>
    <version>${version}</version>
</dependency>
                
json-lib
<dependency>
    <groupId>com.hynnet</groupId>
    <artifactId>json-lib</artifactId>
    <version>2.4</version>
</dependency>
                
2.4
<dependency>
    <groupId>com.github.fangjinuo.easyjson</groupId>
    <artifactId>jsonlib-to-easyjson</artifactId>
    <version>${version}</version>
</dependency>
                
json-smart
<dependency>
    <groupId>net.minidev</groupId>
    <artifactId>json-smart</artifactId>
    <version>2.3</version>
</dependency>
                
2.3
<dependency>
    <groupId>com.github.fangjinuo.easyjson</groupId>
    <artifactId>jsonsmart-to-easyjson</artifactId>
    <version>${version}</version>
</dependency>
                
Eclipse minimal-json
<dependency>
    <groupId>com.eclipsesource.minimal-json</groupId>
    <artifactId>minimal-json</artifactId>
    <version>0.9.5</version>
</dependency>
                
0.9.5
<dependency>
    <groupId>com.github.fangjinuo.easyjson</groupId>
    <artifactId>minimaljson-to-easyjson</artifactId>
    <version>${version}</version>
</dependency>
                
org.json
<dependency>
    <groupId>org.json</groupId>
    <artifactId>json</artifactId>
    <version>20180813</version>
</dependency>
                
20180813
<dependency>
    <groupId>com.github.fangjinuo.easyjson</groupId>
    <artifactId>orgjson-to-easyjson</artifactId>
    <version>${version}</version>
</dependency>
                
Progsbase JSON
<dependency>
    <groupId>com.progsbase.libraries</groupId>
    <artifactId>JSON</artifactId>
    <version>0.3.9</version>
</dependency>
                
0.3.9
<dependency>
    <groupId>com.github.fangjinuo.easyjson</groupId>
    <artifactId>progsbase-to-easyjson</artifactId>
    <version>${version}</version>
</dependency>
                
json-simple
<dependency>
    <groupId>com.googlecode.json-simple</groupId>
    <artifactId>json-simple</artifactId>
    <version>1.1.1</version>
</dependency>
                
1.1.1
<dependency>
    <groupId>com.github.fangjinuo.easyjson</groupId>
    <artifactId>simplejson-to-easyjson</artifactId>
    <version>${version}</version>
</dependency>
                
Boon-json
        <dependency>
            <groupId>com.github.advantageous</groupId>
            <artifactId>boon-json</artifactId>
            <version>0.5.7-RC1</version>
        </dependency>
                
0.5.7-RC1
        <dependency>
            <groupId>com.github.fangjinuo.easyjson</groupId>
            <artifactId>boonjson-to-easyjson</artifactId>
            <version>${version}</version>
        </dependency>
                
Moshi
        <dependency>
            <groupId>com.squareup.moshi</groupId>
            <artifactId>moshi</artifactId>
            <version>1.9.2</version>
        </dependency>
                
1.8.6+
        <dependency>
            <groupId>com.github.fangjinuo.easyjson</groupId>
            <artifactId>moshi-to-easyjson</artifactId>
            <version>${version}</version>
        </dependency>
                

How to:

@see easyjson-examples testcases

Contact:

如果遇到问题,可以在Github, Gitee 上提出issue, 也可以在QQ群里询问。

QQ Group: 750929088
QQ Group

推广

  • langx 系列
    • langx-js:TypeScript, JavaScript tools
    • langx-java: Java tools ,可以替换guava, apache commons-lang,io, hu-tool等
  • easyjson: 一个通用的JSON库门面,可以无缝的在各个JSON库之间切换,就像slf4j那样。
  • sqlhelper: SQL工具套件(通用分页、DDL Dump、SQLParser、URL Parser、批量操作工具等)。
  • esmvc: ElasticSearch 通用客户端,就像MyBatis Mapper那样顺滑
  • redisclient: 基于Spring RestTemplate提供的客户端
  • audit:通用的Java应用审计框架

鸣谢

最后,感谢 Jetbrains 提供免费License,方便了开源项目的发展。

Jetbrains

Versions

Version
3.0.2
3.0.1
3.0.0