6.7 KiB
Overview
JSON.simple is a simple Java toolkit for JSON. You can use JSON.simple to encode or decode JSON text.
Features
-
Full compliance with JSON specification (RFC4627) and reliable (see compliance testing)
-
Provides multiple functionalities such as encode, decode/parse and escape JSON text while keeping the library lightweight
-
Flexible, simple and easy to use by reusing Map and List interfaces
-
Supports streaming output of JSON text
-
Stoppable SAX-like interface for streaming input of JSON text (learn more)
-
Heap based parser
-
High performance (see performance testing)
-
No dependency on external libraries
-
Both of the source code and the binary are JDK1.2 compatible
Getting Started
Note: You need to put the latest json-simple-1.1.1.jar in your CLASSPATH before compiling and running the example codes.
Mapping Between JSON and Java Entities
| JSON | Java |
|---|---|
| string | java.lang.String |
| number | java.lang.Number |
| true | false |
| null | null |
| array | java.util.List |
| object | java.util.Map |
JSON.simple maps entities from the left side to the right side while decoding or parsing, and maps entities from the right to the left while encoding. While decoding, default concrete class of java.util.List is org.json.simple.JSONArray and default concrete class of java.util.Map is org.json.simple.JSONObject. While encoding, other classes that are not listed on the right side of the table need to implement JSONAware or JSONStreamAware (streaming only) to customize JSON outputs. In such cases, JSON.simple calls JSONAware.toJSONString() or JSONStreamAware.writeJSONString() to determine the resulting JSON text.
Maven Repository
Developer's Guide
JSON.simple in Projects/Products
- Vuze (Azureus)
- Apache Cassandra
- Apache Clerezza
- Apache MyFaces
- Apache Oozie(TM) Workflow Scheduler for Hadoop
- Apusic OperaMasks
- Chartle.net
- co-ode-owl-plugins
- google-caja
- Google Chrome Developer Tools for Java
- GV
- Hula from Novell
- jmx4perl
- Json2Ldap
- Kindle3
- LabKey Server
- Log4Ant
- Mozilla Bespin
- MTS
- MUSCLE
- NoiseTube
- NuGram Platform
- PhyloWidget
- Renren.com Open API
- Sonar
- Teiid
- Twitter elephant-bird
- TopQuadrant TopBraid Suite™
- vtiger CRM Web Services Client Library
- XBrain
- ZK.forge
JSON.simple in Fedora
JSON.simple in Ubuntu
JSON.simple in Publications
- O'Reilly - Ajax On Java
- Ajax development case study
- Tutorial from webucator
- A Review of 5 Java JSON Libraries (Rob@Rojotek)
- PeopleSoft PeopleTools Tips & Techniques by Jim J. Marion
- JSON.simple in Jim's Blog
- Tutorial: Using Ext JS, Servlets, JSON, MySQL and Tomcat on Fedora
- Interesting blog on JSON numeric types from Public Object
- Android as SOA player
Next Steps
- Auto marshalling and unmarshalling utils for Java Beans
Links
About me
Acknowledgment
YourKit is kindly supporting this open source project with its full-featured Java Profiler.
YourKit, LLC is the creator of innovative and intelligent tools for profiling Java and .NET applications. Take a look at YourKit's leading software products:
