JSON-smart-action Small and Fast Parser

JSON (JavaScript Object Notation) is a lightweight data-interchange format. It is easy for humans to read and write. It is easy for machines to parse and generate. It is based on a subset of the JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999. JSON is a text format that is completely language independent but uses conventions that are familiar to programmers of the C-family of languages, including C, C++, C#, Java, JavaScript, Perl, Python, and many others. These properties make JSON an ideal data-interchange language.

License

License

Categories

Categories

IDE Development Tools Net JSON Data
GroupId

GroupId

net.minidev
ArtifactId

ArtifactId

json-smart-action
Last Version

Last Version

2.4.2
Release Date

Release Date

Type

Type

bundle
Description

Description

JSON-smart-action Small and Fast Parser
JSON (JavaScript Object Notation) is a lightweight data-interchange format. It is easy for humans to read and write. It is easy for machines to parse and generate. It is based on a subset of the JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999. JSON is a text format that is completely language independent but uses conventions that are familiar to programmers of the C-family of languages, including C, C++, C#, Java, JavaScript, Perl, Python, and many others. These properties make JSON an ideal data-interchange language.
Project URL

Project URL

https://urielch.github.io/
Project Organization

Project Organization

Chemouni Uriel
Source Code Management

Source Code Management

https://github.com/netplex/json-smart-v2

Download json-smart-action

Dependencies

compile (1)

Group / Artifact Type Version
net.minidev : json-smart jar 2.4.2

test (2)

Group / Artifact Type Version
org.junit.jupiter : junit-jupiter-api jar 5.7.1
org.junit.jupiter : junit-jupiter-params jar 5.7.1

Project Modules

There are no modules declared in this project.

json-smart-v2

Build Status Maven Central Coverage Status

Json-smart development start in 2010, at that time SQL servers do not support native JSON fields, NoSQL databases slowly emerging, and all the existing JSON API were bogus. One this time I write lots of test to benchmark and compare JSON java parser.

I never like SQL database, because it's almost impossible to update a data model without, impacting the production platform. Adding a column is a terrible operation.

That way I started json-smart. all non-indexed data in my datastores were stored in a column as a is serialized JSON message. To fit MySQL varchar(255) fields, I try to make my JSON as small as possible, that why json-smart il optimized to produce small JSON-like String.

But now times had changed, most of the JSON API are now stable, and I'm now using document-oriented Databases and JSON native SQL types.

So I do not use my json-smart anymore. I had fun with this project. If you want to apply some change on json-smart create pull request, with a lots JUnit test.

WIKI is here

Changelog

V 2.4.7

  • full timezone support in date parsing
  • set default charset to UTF-8 when parsing byte[] contents

V 2.4.6

  • remove paren pom
  • same as 2.4.5

V 2.4.4

  • fix ArrayIndexOutOfBoundsException issue 68

V 2.4

  • add BIG_DIGIT_UNRESTRICTED to avoid BigDigit usage on some Double.
  • fix CVE-2021-27568
  • java 11 build

V 2.3.1

  • Fixes issue #60 (CVE-2021-27568)
  • full timezone support in date parsing

V 2.3

  • Patch 37 issue 37
  • Explicite support of char 127 issue 18
  • Integrate json-smart-action from Eitan Raviv PR 31
  • Remove hard codded e.printStackTrace() issue 33
  • Improve date parsing code to support all timeZones issue 29

V 2.2.2

  • Fix support for default java datetime format for US locale
  • Update my time Zone from Paris to San Francisco.

V 2.2.1

  • Fix issue in strict mode issue gh-17
  • Add a licence Copy at the root project level issue gh-16
  • Change InputStream input reading to use UTF8. issue 48

V 2.2

  • Rename asm to accessors-smart due to conflict name with asm.ow2.org lib. fix PR-10
  • Fix OSGI error fix PR-2
  • Add support for BigDecimal
  • Improve JSONObject.getAsNumber() helper
  • Add a Field Remaper

V 2.1

  • net.minidev.json.mapper renamed to net.minidev.json.writer
  • Add ACCEPT_TAILLING_SPACE Parssing Flag.
  • Mapper classes now non static.
  • Reader mapper are now available in net.minidev.json.reader.JsonReader class
  • Writer mapper are now available in net.minidev.json.writer.JsonWriter class

V 2.0

  • Fix Double Identification issue 44
  • Fix Collection Interface Serialisation
  • Fix security Exception in ASM code
  • Project moved to GitHub
  • Fix issue 42

V 2.0-RC3

  • Add custom data binding inside the ASM layer.
  • Add Date support
  • Add \x escape sequence support issue 39
  • fix issue issue 37

V 2.0-RC2

V 2.0-RC1

  • speed improvement in POJO manipulation
  • add JSONStyle.LT_COMPRESS predefined generate strct json, but ignoring / escapement.

Versions

Version
2.4.2
2.4.1
2.3.1
2.3