项目作者: helpermethod

项目描述 :
A fluent Java 8 DSL for building JSON documents.
高级语言: Java
项目地址: git://github.com/helpermethod/molten-json.git
创建时间: 2017-02-17T16:32:31Z
项目社区:https://github.com/helpermethod/molten-json

开源协议:Apache License 2.0

下载


Molten JSON

Download
Hex.pm

molten-json is a fluent Java 8 DSL for building JSON documents.

Example

  1. {
  2. "name": "molten-json",
  3. "version": "0.1.0",
  4. "description": "A fluent Java 8 DSL for working with JSON.",
  5. "repository": {
  6. "type": "git",
  7. "url": "https://github.com/helpermethod/molten-json"
  8. },
  9. "keywords": ["json", "java-8", "fluent", "dsl"],
  10. "author": "helpermethod",
  11. "license": "Apache 2",
  12. "bugs": {
  13. "url": "https://github.com/helpermethod/molten-json/issues"
  14. }
  15. }
  1. String project = new Json()
  2. .object(o -> o
  3. .string("name", "molten-json")
  4. .string("version", "0.1.0")
  5. .string("description", "A fluent Java 8 DSL for working with JSON.")
  6. .object("repository", r -> r
  7. .string("type", "git")
  8. .string("url", "https://github.com/helpermethod/molten-json"))
  9. .array("keywords", k -> k.strings("json", "java-8", "fluent", "dsl"))
  10. .string("author", "helpermethod")
  11. .string("license", "Apache 2")
  12. .object("bugs", b -> b
  13. .string("url", "https://github.com/helpermethod/molten-json/issues")))
  14. .toPrettyString();

Getting Started

Maven

  1. <repositories>
  2. <repository>
  3. <id>bintray</id>
  4. <url>http://dl.bintray.com/helpermethod/maven</url>
  5. </repository>
  6. </repositories>
  7. <dependencies>
  8. <dependency>
  9. <groupId>com.helpermethod</groupId>
  10. <artifactId>molten-json</artifactId>
  11. <version>0.1.0</version>
  12. </dependency>
  13. </dependencies>

Gradle

  1. repositories {
  2. maven {
  3. url 'http://dl.bintray.com/helpermethod/maven'
  4. }
  5. }
  6. dependencies {
  7. compile 'com.helpermethod:molten-json:0.1.0'
  8. }

Usage

Creating an empty JSONObject

  1. JSONObject project = new Json().object().toJson();

Creating a JSONObject with one string property

  1. JSONObject project = new Json().object(o -> o.string("name", "molten-json"));

Creating an empty JSONArray

  1. JSONArray keywords = new Json().array().toJson();

Creating a JSONArray with one string element

  1. JSONArray keywords = new Json().array(a -> a.strings("json"))

Creating a JSONArray with multiple string elements

  1. JSONArray keywords = new Json().array(a -> a.strings("json", "java-8", "fluent", "dsl"))

Creating a JSON string

  1. String project = new Json().object(o -> o.string("name", "molten-json")).toString();

Creating a pretty-printed JSON string

  1. String project = new Json().object(o -> o.string("name", "molten-json")).toPrettyString();

Creating a nested JSONObject

  1. JSONObject project = new Json()
  2. .object(o -> o
  3. .string("name", "molten-json")
  4. .string("version", "0.1.0"))
  5. .object("repository", r -> r
  6. .string("type", "git")
  7. .string("url", "https://github.com/helpermethod/molten-json")))
  8. .toJson();

Ignoring properties with null values

  1. String version = null;
  2. JSONObject project = new Json(NullHandlingStrategy.IGNORE_NULL)
  3. .object(o -> o
  4. .string("name", "molten-json")
  5. .string("version", version))
  6. .toJson();