
json-simple
GitHub
https://github.com/fangyidong/json-simple
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.
- Encoding Examples
- Decoding Examples
- Escaping Examples
- JSP and AJAX Examples
Mapping Between JSON and Java Entities
| JSON | Java | |:---------|:---------| | string | java.lang.String | | number | java.lang.Number | | true|false | java.lang.Boolean | | 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
- JSON.simple in central maven repository
Developer's Guide
- Build With Ant
- Build With Eclipse
- The JSON Lexer
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:
http://www.yourkit.com/java/profiler/index.jsp'>YourKit Java Profiler http://www.yourkit.com/.net/profiler/index.jsp'>YourKit .NET Profiler