You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@juneau.apache.org by ja...@apache.org on 2017/05/04 18:17:51 UTC
incubator-juneau git commit: Jackson comparison section.
Repository: incubator-juneau
Updated Branches:
refs/heads/master b110f7d15 -> de98f18d6
Jackson comparison section.
Project: http://git-wip-us.apache.org/repos/asf/incubator-juneau/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-juneau/commit/de98f18d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-juneau/tree/de98f18d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-juneau/diff/de98f18d
Branch: refs/heads/master
Commit: de98f18d66ce49a5161509326dc45a766f8d3a9f
Parents: b110f7d
Author: JamesBognar <ja...@apache.org>
Authored: Thu May 4 14:17:47 2017 -0400
Committer: JamesBognar <ja...@apache.org>
Committed: Thu May 4 14:17:47 2017 -0400
----------------------------------------------------------------------
juneau-core/src/main/javadoc/overview.html | 98 +++++++++++++++++++++++++
1 file changed, 98 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/de98f18d/juneau-core/src/main/javadoc/overview.html
----------------------------------------------------------------------
diff --git a/juneau-core/src/main/javadoc/overview.html b/juneau-core/src/main/javadoc/overview.html
index 40d6b27..566c169 100644
--- a/juneau-core/src/main/javadoc/overview.html
+++ b/juneau-core/src/main/javadoc/overview.html
@@ -88,6 +88,7 @@
<li><p><a class='doclink' href='#Core.SimpleVarLanguage'>Simple Variable Language</a></p>
<li><p><a class='doclink' href='#Core.ConfigFile'>Configuration Files</a></p>
<li><p><a class='doclink' href='#Core.SupportedLanguages'>Supported Languages</a></p>
+ <li><p><a class='doclink' href='#Core.JacksonComparison'>Comparison with Jackson</a></p>
</ol>
<li><p><a class='doclink' href='#DTOs'>Juneau Data Transfer Objects (org.apache.juneau.dto)</a></p>
<ol>
@@ -1550,6 +1551,102 @@
<li class='p'><a class='doclink' href='org/apache/juneau/dto/cognos/package-summary.html#TOC'>org.apache.juneau.dto.cognos</a> - Cognos support.
</ul>
</div>
+
+ <!-- ======================================================================================================== -->
+ <a id="Core.JacksonComparison"></a>
+ <h3 class='topic' onclick='toggle(this)'>2.12 - Comparison with Jackson</h3>
+ <div class='topic'>
+ <p>
+ Juneau was developed independently from Jackson, but shares many of the same features and capabilities.
+ Whereas Jackson was created to work primariliy with JSON, Juneau was created to work for multiple languages.
+ Therefore, the terminology and annotations in Juneau are similar, but language-agnostic.
+ </p>
+ <p>
+ The following charts describe equivalent features between the two libraries:
+ </p>
+ <h6 class='topic'>Annotations</h6>
+ <table class='styled'>
+ <tr><th>Jackson</th><th>Juneau</th></tr>
+ <tr>
+ <td><ja>@JsonGetter</ja><br><ja>@JsonSetter</ja></td>
+ <td>
+ {@link org.apache.juneau.annotation.BeanProperty @BeanProperty}
+ </td>
+ </tr>
+ <tr>
+ <td><ja>@JsonAnyGetter</ja><br><ja>@JsonAnySetter</ja></td>
+ <td>
+ {@link org.apache.juneau.annotation.BeanProperty#name() @BeanProperty(name="*")}
+ </td>
+ </tr>
+ <tr>
+ <td><ja>@JsonIgnore</ja><br><ja>@JsonIgnoreType</ja></td>
+ <td>
+ {@link org.apache.juneau.annotation.BeanIgnore @BeanIgnore}
+ </td>
+ </tr>
+ <tr>
+ <td><code><ja>@JsonIgnoreProperties</ja>({...})</code></td>
+ <td>
+ {@link org.apache.juneau.annotation.Bean#excludeProperties @Bean(excludeProperties="...")}
+ </td>
+ </tr>
+ <tr>
+ <td><code><ja>@JsonAutoDetect</ja>(fieldVisibility=...)</code></td>
+ <td>
+ No equivalent annotation, but can be controlled via: <br>
+ {@link org.apache.juneau.BeanContext#BEAN_beanFieldVisibility}<br>
+ {@link org.apache.juneau.BeanContext#BEAN_methodVisibility}<br>
+ Future annotation support planned.
+ </td>
+ </tr>
+ <tr>
+ <td><ja>@JsonCreator</ja><br><ja>@JsonProperty</ja></td>
+ <td>
+ {@link org.apache.juneau.annotation.BeanConstructor @BeanConstructor}
+ </td>
+ </tr>
+ <tr>
+ <td><ja>@JacksonInject</ja></td>
+ <td>
+ No equivalent.<br>
+ Future support planned.
+ </td>
+
+ </tr>
+ <tr>
+ <td><ja>@JsonSerialize</ja><br><ja>@JsonDeserialize</ja></td>
+ <td>
+ Juneau uses swaps to convert non-serializable object to serializable forms:<br>
+ {@link org.apache.juneau.annotation.BeanProperty#swap() @BeanProperty(swap=...)}<br>
+ {@link org.apache.juneau.annotation.Pojo#swap() @Pojo(swap=...)}
+ </td>
+ </tr>
+ <tr>
+ <td><ja>@JsonInclude</ja></td>
+ <td>
+ No equivalent annotation, but can be controlled via various settings:<br>
+ {@link org.apache.juneau.BeanContext}<br>
+ {@link org.apache.juneau.serializer.SerializerContext}<br>
+ Future annotation support planned.
+ </td>
+ </tr>
+ <tr>
+ <td><ja>@JsonPropertyOrder</ja></td>
+ <td>
+ {@link org.apache.juneau.annotation.Bean#properties @Bean(properties="...")}<br>
+ {@link org.apache.juneau.annotation.Bean#sort @Bean(sort=x)}<br>
+ </td>
+ </tr>
+ <tr>
+ <td><ja>@JsonValue</ja><br><ja>@JsonRawValue</ja></td>
+ <td>
+ No equivalents.<br>
+ Future support unlikely since these are JSON-centric.
+ </td>
+ </tr>
+ </table>
+ </div>
</div>
<!-- ======================================================================================================== -->
@@ -5820,6 +5917,7 @@
<li>{@link org.apache.juneau.http.ContentType}
</ul>
<li>Support for dynamic beans. See {@link org.apache.juneau.annotation.BeanProperty#name() @BeanProperty.name()}.
+ <li>New doc: <a class='doclink' href='#Core.JacksonComparison'>2.12 - Comparison with Jackson</a>
</ul>
<h6 class='topic'>org.apache.juneau.rest</h6>