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:18:54 UTC

incubator-juneau-website git commit: Add Jackson comparison section.

Repository: incubator-juneau-website
Updated Branches:
  refs/heads/asf-site 46c4861ba -> b1c508354


Add Jackson comparison section.

Project: http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/commit/b1c50835
Tree: http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/tree/b1c50835
Diff: http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/diff/b1c50835

Branch: refs/heads/asf-site
Commit: b1c508354f89d72b7ec83ea367a0ddd55e6a1c5b
Parents: 46c4861
Author: JamesBognar <ja...@apache.org>
Authored: Thu May 4 14:18:46 2017 -0400
Committer: JamesBognar <ja...@apache.org>
Committed: Thu May 4 14:18:46 2017 -0400

----------------------------------------------------------------------
 content/site/apidocs/overview-summary.html | 100 +++++++++++++++++++++++-
 1 file changed, 99 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/b1c50835/content/site/apidocs/overview-summary.html
----------------------------------------------------------------------
diff --git a/content/site/apidocs/overview-summary.html b/content/site/apidocs/overview-summary.html
index 4f6e279..4089f98 100644
--- a/content/site/apidocs/overview-summary.html
+++ b/content/site/apidocs/overview-summary.html
@@ -440,6 +440,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>
@@ -1902,6 +1903,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>
+               <a href="org/apache/juneau/annotation/BeanProperty.html" title="annotation in org.apache.juneau.annotation"><code>@BeanProperty</code></a>
+            </td>
+         </tr>
+         <tr>
+            <td><ja>@JsonAnyGetter</ja><br><ja>@JsonAnySetter</ja></td>
+            <td>
+               <a href="org/apache/juneau/annotation/BeanProperty.html#name--"><code>@BeanProperty(name="*")</code></a>
+            </td>
+         </tr>
+         <tr>
+            <td><ja>@JsonIgnore</ja><br><ja>@JsonIgnoreType</ja></td>
+            <td>
+               <a href="org/apache/juneau/annotation/BeanIgnore.html" title="annotation in org.apache.juneau.annotation"><code>@BeanIgnore</code></a>
+            </td>
+         </tr>
+         <tr>
+            <td><code><ja>@JsonIgnoreProperties</ja>({...})</code></td>
+            <td>
+               <a href="org/apache/juneau/annotation/Bean.html#excludeProperties--"><code>@Bean(excludeProperties="...")</code></a>
+            </td>
+         </tr>
+         <tr>
+            <td><code><ja>@JsonAutoDetect</ja>(fieldVisibility=...)</code></td>
+            <td>
+               No equivalent annotation, but can be controlled via: <br>
+               <a href="org/apache/juneau/BeanContext.html#BEAN_beanFieldVisibility"><code>BeanContext.BEAN_beanFieldVisibility</code></a><br>
+               <a href="org/apache/juneau/BeanContext.html#BEAN_methodVisibility"><code>BeanContext.BEAN_methodVisibility</code></a><br>
+               Future annotation support planned.
+            </td>
+         </tr>
+         <tr>
+            <td><ja>@JsonCreator</ja><br><ja>@JsonProperty</ja></td>
+            <td>
+               <a href="org/apache/juneau/annotation/BeanConstructor.html" title="annotation in org.apache.juneau.annotation"><code>@BeanConstructor</code></a>
+            </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>
+               <a href="org/apache/juneau/annotation/BeanProperty.html#swap--"><code>@BeanProperty(swap=...)</code></a><br>
+               <a href="org/apache/juneau/annotation/Pojo.html#swap--"><code>@Pojo(swap=...)</code></a>
+            </td>
+         </tr>
+         <tr>
+            <td><ja>@JsonInclude</ja></td>
+            <td>
+               No equivalent annotation, but can be controlled via various settings:<br>
+               <a href="org/apache/juneau/BeanContext.html" title="class in org.apache.juneau"><code>BeanContext</code></a><br>
+               <a href="org/apache/juneau/serializer/SerializerContext.html" title="class in org.apache.juneau.serializer"><code>SerializerContext</code></a><br>
+               Future annotation support planned.
+            </td>
+         </tr>
+         <tr>
+            <td><ja>@JsonPropertyOrder</ja></td>
+            <td>
+               <a href="org/apache/juneau/annotation/Bean.html#properties--"><code>@Bean(properties="...")</code></a><br>
+               <a href="org/apache/juneau/annotation/Bean.html#sort--"><code>@Bean(sort=x)</code></a><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>
 
 <!-- ======================================================================================================== -->
@@ -6088,7 +6185,7 @@
    
    <h5 class='toc'>What's new in each release</h5>
    <ul class='toc'>
-      <li><p><a class='doclink' href='#6.2.0'>6.2.1 (TBD)</a></p>
+      <li><p><a class='doclink' href='#6.2.1'>6.2.1 (TBD)</a></p>
       <li><p><a class='doclink' href='#6.2.0'>6.2.0 (Apr 28, 2017)</a></p>
       <li><p><a class='doclink' href='#6.1.0'>6.1.0 (Feb 25, 2017)</a></p>
       <li><p><a class='doclink' href='#6.0.1'>6.0.1 (Jan 3, 2017)</a></p>
@@ -6172,6 +6269,7 @@
             <li><a href="org/apache/juneau/http/ContentType.html" title="class in org.apache.juneau.http"><code>ContentType</code></a>
          </ul>
          <li>Support for dynamic beans.  See <a href="org/apache/juneau/annotation/BeanProperty.html#name--"><code>@BeanProperty.name()</code></a>.
+         <li>New doc: <a class='doclink' href='#Core.JacksonComparison'>2.12 - Comparison with Jackson</a>
       </ul>
 
       <h6 class='topic'>org.apache.juneau.rest</h6>