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 <[email protected]>
Authored: Thu May 4 14:17:47 2017 -0400
Committer: JamesBognar <[email protected]>
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>

Reply via email to