public enum MapperFeature extends Enum<MapperFeature> implements ConfigFeature
ObjectMapper
, and accessible (but not changeable)
via ObjectReader
and ObjectWriter
(as well as
through various convenience methods through context objects).
Note that in addition to being only mutable via ObjectMapper
,
changes only take effect when done before any serialization or
deserialization calls -- that is, caller must follow
"configure-then-use" pattern.
Enum Constant and Description |
---|
AUTO_DETECT_CREATORS
Feature that determines whether "creator" methods are
automatically detected by consider public constructors,
and static single argument methods with name "valueOf".
|
AUTO_DETECT_FIELDS
Feature that determines whether non-static fields are recognized as
properties.
|
AUTO_DETECT_GETTERS
Feature that determines whether regualr "getter" methods are
automatically detected based on standard Bean naming convention
or not.
|
AUTO_DETECT_IS_GETTERS
Feature that determines whether "is getter" methods are
automatically detected based on standard Bean naming convention
or not.
|
AUTO_DETECT_SETTERS
Feature that determines whether "setter" methods are
automatically detected based on standard Bean naming convention
or not.
|
CAN_OVERRIDE_ACCESS_MODIFIERS
Feature that determines whether method and field access
modifier settings can be overridden when accessing
properties.
|
DEFAULT_VIEW_INCLUSION
Feature that determines whether properties that have no view
annotations are included in JSON serialization views (see
JsonView for more
details on JSON Views). |
REQUIRE_SETTERS_FOR_GETTERS
Feature that determines whether getters (getter methods)
can be auto-detected if there is no matching mutator (setter,
constructor parameter or field) or not: if set to true,
only getters that match a mutator are auto-discovered; if
false, all auto-detectable getters can be discovered.
|
SORT_PROPERTIES_ALPHABETICALLY
Feature that defines default property serialization order used
for POJO fields (note: does not apply to
Map
serialization!):
if enabled, default ordering is alphabetic (similar to
how JsonPropertyOrder.alphabetic()
works); if disabled, order is unspecified (based on what JDK gives
us, which may be declaration order, but is not guaranteed). |
USE_ANNOTATIONS
Feature that determines whether annotation introspection
is used for configuration; if enabled, configured
AnnotationIntrospector will be used: if disabled,
no annotations are considered. |
USE_GETTERS_AS_SETTERS
Feature that determines whether otherwise regular "getter"
methods (but only ones that handle Collections and Maps,
not getters of other type)
can be used for purpose of getting a reference to a Collection
and Map to modify the property, without requiring a setter
method.
|
USE_STATIC_TYPING
Feature that determines whether the type detection for
serialization should be using actual dynamic runtime type,
or declared static type.
|
USE_WRAPPER_NAME_AS_PROPERTY_NAME
Feature that can be enabled to make property names be
overridden by wrapper name (usually detected with annotations
as defined by
AnnotationIntrospector.findWrapperName(com.fasterxml.jackson.databind.introspect.Annotated) . |
Modifier and Type | Method and Description |
---|---|
boolean |
enabledByDefault()
Accessor for checking whether this feature is enabled by default.
|
int |
getMask()
Returns bit mask for this feature instance
|
static MapperFeature |
valueOf(String name)
Returns the enum constant of this type with the specified name.
|
static MapperFeature[] |
values()
Returns an array containing the constants of this enum type, in
the order they are declared.
|
public static final MapperFeature USE_ANNOTATIONS
AnnotationIntrospector
will be used: if disabled,
no annotations are considered.
Feature is enabled by default.
public static final MapperFeature AUTO_DETECT_CREATORS
Note that this feature has lower precedence than per-class annotations, and is only used if there isn't more granular configuration available.
Feature is enabled by default.
public static final MapperFeature AUTO_DETECT_FIELDS
Note that this feature has lower precedence than per-class annotations, and is only used if there isn't more granular configuration available.
Feature is enabled by default.
public static final MapperFeature AUTO_DETECT_GETTERS
Note that since version 1.3, this does NOT include
"is getters" (see AUTO_DETECT_IS_GETTERS
for details)
Note that this feature has lower precedence than per-class annotations, and is only used if there isn't more granular configuration available.
Feature is enabled by default.
public static final MapperFeature AUTO_DETECT_IS_GETTERS
Note that this feature has lower precedence than per-class annotations, and is only used if there isn't more granular configuration available.
Feature is enabled by default.
public static final MapperFeature AUTO_DETECT_SETTERS
Note that this feature has lower precedence than per-class annotations, and is only used if there isn't more granular configuration available.
Feature is enabled by default.
public static final MapperFeature REQUIRE_SETTERS_FOR_GETTERS
Feature is disabled by default.
public static final MapperFeature USE_GETTERS_AS_SETTERS
Note that such getters-as-setters methods have lower precedence than setters, so they are only used if no setter is found for the Map/Collection property.
Feature is enabled by default.
public static final MapperFeature CAN_OVERRIDE_ACCESS_MODIFIERS
AccessibleObject.setAccessible(java.lang.reflect.AccessibleObject[], boolean)
may be called to enable access to otherwise unaccessible
objects.
Feature is enabled by default.
public static final MapperFeature USE_STATIC_TYPING
This global default value can be overridden at class, method
or field level by using JsonSerialize.typing()
annotation
property.
Feature is disabled by default which means that dynamic runtime types are used (instead of declared static types) for serialization.
public static final MapperFeature DEFAULT_VIEW_INCLUSION
JsonView
for more
details on JSON Views).
If enabled, non-annotated properties will be included;
when disabled, they will be excluded. So this feature
changes between "opt-in" (feature disabled) and
"opt-out" (feature enabled) modes.
Default value is enabled, meaning that non-annotated
properties are included in all views if there is no
JsonView
annotation.
Feature is enabled by default.
public static final MapperFeature SORT_PROPERTIES_ALPHABETICALLY
Map
serialization!):
if enabled, default ordering is alphabetic (similar to
how JsonPropertyOrder.alphabetic()
works); if disabled, order is unspecified (based on what JDK gives
us, which may be declaration order, but is not guaranteed).
Note that this is just the default behavior, and can be overridden by explicit overrides in classes.
Feature is disabled by default.
public static final MapperFeature USE_WRAPPER_NAME_AS_PROPERTY_NAME
AnnotationIntrospector.findWrapperName(com.fasterxml.jackson.databind.introspect.Annotated)
.
If enabled, all properties that have associated non-empty Wrapper
name will use that wrapper name instead of property name.
If disabled, wrapper name is only used for wrapping (if anything).
Feature is disabled by default.
public static MapperFeature[] values()
for (MapperFeature c : MapperFeature.values()) System.out.println(c);
public static MapperFeature valueOf(String name)
name
- the name of the enum constant to be returned.IllegalArgumentException
- if this enum type has no constant
with the specified nameNullPointerException
- if the argument is nullpublic boolean enabledByDefault()
ConfigFeature
enabledByDefault
in interface ConfigFeature
public int getMask()
ConfigFeature
getMask
in interface ConfigFeature
Copyright © 2012-2013 FasterXML. All Rights Reserved.