1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 2<!-- NewPage --> 3<html lang="en"> 4<head> 5<!-- Generated by javadoc (version 1.7.0_55) on Thu Jan 01 15:31:15 PST 2015 --> 6<meta http-equiv="Content-Type" content="text/html" charset="UTF-8"> 7<title>JsonProperty (Jackson-annotations 2.5.0 API)</title> 8<meta name="date" content="2015-01-01"> 9<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style"> 10</head> 11<body> 12<script type="text/javascript"><!-- 13 if (location.href.indexOf('is-external=true') == -1) { 14 parent.document.title="JsonProperty (Jackson-annotations 2.5.0 API)"; 15 } 16//--> 17</script> 18<noscript> 19<div>JavaScript is disabled on your browser.</div> 20</noscript> 21<!-- ========= START OF TOP NAVBAR ======= --> 22<div class="topNav"><a name="navbar_top"> 23<!-- --> 24</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow"> 25<!-- --> 26</a> 27<ul class="navList" title="Navigation"> 28<li><a href="../../../../com/fasterxml/jackson/annotation/package-summary.html">Package</a></li> 29<li class="navBarCell1Rev">Class</li> 30<li><a href="class-use/JsonProperty.html">Use</a></li> 31<li><a href="package-tree.html">Tree</a></li> 32<li><a href="../../../../deprecated-list.html">Deprecated</a></li> 33<li><a href="../../../../index-all.html">Index</a></li> 34<li><a href="../../../../help-doc.html">Help</a></li> 35</ul> 36</div> 37<div class="subNav"> 38<ul class="navList"> 39<li><a href="../../../../com/fasterxml/jackson/annotation/JsonManagedReference.html" title="annotation in com.fasterxml.jackson.annotation"><span class="strong">Prev Class</span></a></li> 40<li><a href="../../../../com/fasterxml/jackson/annotation/JsonPropertyDescription.html" title="annotation in com.fasterxml.jackson.annotation"><span class="strong">Next Class</span></a></li> 41</ul> 42<ul class="navList"> 43<li><a href="../../../../index.html?com/fasterxml/jackson/annotation/JsonProperty.html" target="_top">Frames</a></li> 44<li><a href="JsonProperty.html" target="_top">No Frames</a></li> 45</ul> 46<ul class="navList" id="allclasses_navbar_top"> 47<li><a href="../../../../allclasses-noframe.html">All Classes</a></li> 48</ul> 49<div> 50<script type="text/javascript"><!-- 51 allClassesLink = document.getElementById("allclasses_navbar_top"); 52 if(window==top) { 53 allClassesLink.style.display = "block"; 54 } 55 else { 56 allClassesLink.style.display = "none"; 57 } 58 //--> 59</script> 60</div> 61<div> 62<ul class="subNavList"> 63<li>Summary: </li> 64<li>Required | </li> 65<li><a href="#annotation_type_optional_element_summary">Optional</a></li> 66</ul> 67<ul class="subNavList"> 68<li>Detail: </li> 69<li><a href="#annotation_type_element_detail">Element</a></li> 70</ul> 71</div> 72<a name="skip-navbar_top"> 73<!-- --> 74</a></div> 75<!-- ========= END OF TOP NAVBAR ========= --> 76<!-- ======== START OF CLASS DATA ======== --> 77<div class="header"> 78<div class="subTitle">com.fasterxml.jackson.annotation</div> 79<h2 title="Annotation Type JsonProperty" class="title">Annotation Type JsonProperty</h2> 80</div> 81<div class="contentContainer"> 82<div class="description"> 83<ul class="blockList"> 84<li class="blockList"> 85<hr> 86<br> 87<pre><a href="http://download.oracle.com/javase/6/docs/api/java/lang/annotation/Target.html?is-external=true" title="class or interface in java.lang.annotation">@Target</a>(<a href="http://download.oracle.com/javase/6/docs/api/java/lang/annotation/Target.html?is-external=true#value()" title="class or interface in java.lang.annotation">value</a>={<a href="http://download.oracle.com/javase/6/docs/api/java/lang/annotation/ElementType.html?is-external=true#ANNOTATION_TYPE" title="class or interface in java.lang.annotation">ANNOTATION_TYPE</a>,<a href="http://download.oracle.com/javase/6/docs/api/java/lang/annotation/ElementType.html?is-external=true#FIELD" title="class or interface in java.lang.annotation">FIELD</a>,<a href="http://download.oracle.com/javase/6/docs/api/java/lang/annotation/ElementType.html?is-external=true#METHOD" title="class or interface in java.lang.annotation">METHOD</a>,<a href="http://download.oracle.com/javase/6/docs/api/java/lang/annotation/ElementType.html?is-external=true#PARAMETER" title="class or interface in java.lang.annotation">PARAMETER</a>}) 88<a href="http://download.oracle.com/javase/6/docs/api/java/lang/annotation/Retention.html?is-external=true" title="class or interface in java.lang.annotation">@Retention</a>(<a href="http://download.oracle.com/javase/6/docs/api/java/lang/annotation/Retention.html?is-external=true#value()" title="class or interface in java.lang.annotation">value</a>=<a href="http://download.oracle.com/javase/6/docs/api/java/lang/annotation/RetentionPolicy.html?is-external=true#RUNTIME" title="class or interface in java.lang.annotation">RUNTIME</a>) 89public @interface <span class="strong">JsonProperty</span></pre> 90<div class="block">Marker annotation that can be used to define a non-static 91 method as a "setter" or "getter" for a logical property 92 (depending on its signature), 93 or non-static object field to be used (serialized, deserialized) as 94 a logical property. 95<p> 96 Default value ("") indicates that the field name is used 97 as the property name without any modifications, but it 98 can be specified to non-empty value to specify different 99 name. Property name refers to name used externally, as 100 the field name in JSON objects.</div> 101</li> 102</ul> 103</div> 104<div class="summary"> 105<ul class="blockList"> 106<li class="blockList"> 107<!-- =========== ANNOTATION TYPE OPTIONAL MEMBER SUMMARY =========== --> 108<ul class="blockList"> 109<li class="blockList"><a name="annotation_type_optional_element_summary"> 110<!-- --> 111</a> 112<h3>Optional Element Summary</h3> 113<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Optional Element Summary table, listing optional elements, and an explanation"> 114<caption><span>Optional Elements</span><span class="tabEnd"> </span></caption> 115<tr> 116<th class="colFirst" scope="col">Modifier and Type</th> 117<th class="colLast" scope="col">Optional Element and Description</th> 118</tr> 119<tr class="altColor"> 120<td class="colFirst"><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td> 121<td class="colLast"><code><strong><a href="../../../../com/fasterxml/jackson/annotation/JsonProperty.html#defaultValue()">defaultValue</a></strong></code> 122<div class="block">Property that may be used to <b>document</b> expected default value 123 for the property: most often used as source information for generating 124 schemas (like JSON Schema or protobuf/thrift schema), or documentation.</div> 125</td> 126</tr> 127<tr class="rowColor"> 128<td class="colFirst"><code>int</code></td> 129<td class="colLast"><code><strong><a href="../../../../com/fasterxml/jackson/annotation/JsonProperty.html#index()">index</a></strong></code> 130<div class="block">Property that indicates numerical index of this property (relative 131 to other properties specified for the Object).</div> 132</td> 133</tr> 134<tr class="altColor"> 135<td class="colFirst"><code>boolean</code></td> 136<td class="colLast"><code><strong><a href="../../../../com/fasterxml/jackson/annotation/JsonProperty.html#required()">required</a></strong></code> 137<div class="block">Property that indicates whether a value (which may be explicit 138 null) is expected for property during deserialization or not.</div> 139</td> 140</tr> 141<tr class="rowColor"> 142<td class="colFirst"><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td> 143<td class="colLast"><code><strong><a href="../../../../com/fasterxml/jackson/annotation/JsonProperty.html#value()">value</a></strong></code> 144<div class="block">Defines name of the logical property, i.e.</div> 145</td> 146</tr> 147</table> 148</li> 149</ul> 150</li> 151</ul> 152</div> 153<div class="details"> 154<ul class="blockList"> 155<li class="blockList"> 156<!-- ============ ANNOTATION TYPE MEMBER DETAIL =========== --> 157<ul class="blockList"> 158<li class="blockList"><a name="annotation_type_element_detail"> 159<!-- --> 160</a> 161<h3>Element Detail</h3> 162<a name="value()"> 163<!-- --> 164</a> 165<ul class="blockList"> 166<li class="blockList"> 167<h4>value</h4> 168<pre>public abstract <a href="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> value</pre> 169<div class="block">Defines name of the logical property, i.e. JSON object field 170 name to use for the property. If value is empty String (which is the 171 default), will try to use name of the field that is annotated. 172 Note that there is 173 <b>no default name available for constructor arguments</b>, 174 meaning that 175 <b>Empty String is not a valid value for constructor arguments</b>.</div> 176<dl> 177<dt>Default:</dt> 178<dd>""</dd> 179</dl> 180</li> 181</ul> 182<a name="required()"> 183<!-- --> 184</a> 185<ul class="blockList"> 186<li class="blockList"> 187<h4>required</h4> 188<pre>public abstract boolean required</pre> 189<div class="block">Property that indicates whether a value (which may be explicit 190 null) is expected for property during deserialization or not. 191 If expected, <code>BeanDeserialized</code> should indicate 192 this as a validity problem (usually by throwing an exception, 193 but this may be sent via problem handlers that can try to 194 rectify the problem, for example, by supplying a default 195 value). 196<p> 197 Note that as of 2.0, this property is NOT used by 198 <code>BeanDeserializer</code>: support is expected to be 199 added for a later minor version.</div> 200<dl><dt><span class="strong">Since:</span></dt> 201 <dd>2.0</dd></dl> 202<dl> 203<dt>Default:</dt> 204<dd>false</dd> 205</dl> 206</li> 207</ul> 208<a name="index()"> 209<!-- --> 210</a> 211<ul class="blockList"> 212<li class="blockList"> 213<h4>index</h4> 214<pre>public abstract int index</pre> 215<div class="block">Property that indicates numerical index of this property (relative 216 to other properties specified for the Object). This index 217 is typically used by binary formats, but may also be useful 218 for schema languages and other tools.</div> 219<dl><dt><span class="strong">Since:</span></dt> 220 <dd>2.4</dd></dl> 221<dl> 222<dt>Default:</dt> 223<dd>-1</dd> 224</dl> 225</li> 226</ul> 227<a name="defaultValue()"> 228<!-- --> 229</a> 230<ul class="blockListLast"> 231<li class="blockList"> 232<h4>defaultValue</h4> 233<pre>public abstract <a href="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> defaultValue</pre> 234<div class="block">Property that may be used to <b>document</b> expected default value 235 for the property: most often used as source information for generating 236 schemas (like JSON Schema or protobuf/thrift schema), or documentation. 237 It may also be used by Jackson extension modules; core jackson databind 238 does not have any automated handling beyond simply exposing this 239 value through bean property introspection.</div> 240<dl><dt><span class="strong">Since:</span></dt> 241 <dd>2.5</dd></dl> 242<dl> 243<dt>Default:</dt> 244<dd>""</dd> 245</dl> 246</li> 247</ul> 248</li> 249</ul> 250</li> 251</ul> 252</div> 253</div> 254<!-- ========= END OF CLASS DATA ========= --> 255<!-- ======= START OF BOTTOM NAVBAR ====== --> 256<div class="bottomNav"><a name="navbar_bottom"> 257<!-- --> 258</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow"> 259<!-- --> 260</a> 261<ul class="navList" title="Navigation"> 262<li><a href="../../../../com/fasterxml/jackson/annotation/package-summary.html">Package</a></li> 263<li class="navBarCell1Rev">Class</li> 264<li><a href="class-use/JsonProperty.html">Use</a></li> 265<li><a href="package-tree.html">Tree</a></li> 266<li><a href="../../../../deprecated-list.html">Deprecated</a></li> 267<li><a href="../../../../index-all.html">Index</a></li> 268<li><a href="../../../../help-doc.html">Help</a></li> 269</ul> 270</div> 271<div class="subNav"> 272<ul class="navList"> 273<li><a href="../../../../com/fasterxml/jackson/annotation/JsonManagedReference.html" title="annotation in com.fasterxml.jackson.annotation"><span class="strong">Prev Class</span></a></li> 274<li><a href="../../../../com/fasterxml/jackson/annotation/JsonPropertyDescription.html" title="annotation in com.fasterxml.jackson.annotation"><span class="strong">Next Class</span></a></li> 275</ul> 276<ul class="navList"> 277<li><a href="../../../../index.html?com/fasterxml/jackson/annotation/JsonProperty.html" target="_top">Frames</a></li> 278<li><a href="JsonProperty.html" target="_top">No Frames</a></li> 279</ul> 280<ul class="navList" id="allclasses_navbar_bottom"> 281<li><a href="../../../../allclasses-noframe.html">All Classes</a></li> 282</ul> 283<div> 284<script type="text/javascript"><!-- 285 allClassesLink = document.getElementById("allclasses_navbar_bottom"); 286 if(window==top) { 287 allClassesLink.style.display = "block"; 288 } 289 else { 290 allClassesLink.style.display = "none"; 291 } 292 //--> 293</script> 294</div> 295<div> 296<ul class="subNavList"> 297<li>Summary: </li> 298<li>Required | </li> 299<li><a href="#annotation_type_optional_element_summary">Optional</a></li> 300</ul> 301<ul class="subNavList"> 302<li>Detail: </li> 303<li><a href="#annotation_type_element_detail">Element</a></li> 304</ul> 305</div> 306<a name="skip-navbar_bottom"> 307<!-- --> 308</a></div> 309<!-- ======== END OF BOTTOM NAVBAR ======= --> 310<p class="legalCopy"><small>Copyright © 2014-2015 <a href="http://fasterxml.com/">FasterXML</a>. All Rights Reserved.</small></p> 311</body> 312</html> 313