Package org.springframework.format.support

# Class FormattingConversionServiceFactoryBean

java.lang.Object
org.springframework.format.support.FormattingConversionServiceFactoryBean

All Implemented Interfaces:
  `org.springframework.beans.factory.Aware`, `org.springframework.beans.factory.FactoryBean<FormattingConversionService>`, `org.springframework.beans.factory.InitializingBean`, `EmbeddedValueResolverAware`

public class FormattingConversionServiceFactoryBean extends Object implements org.springframework.beans.factory.FactoryBean<FormattingConversionService>, EmbeddedValueResolverAware, org.springframework.beans.factory.InitializingBean
A factory providing convenient access to a `FormattingConversionService` configured with converters and formatters for common types such as numbers, dates, and times.

Additional converters and formatters can be registered declaratively through `setConverters(Set)` and `setFormatters(Set)`. Another option is to register converters and formatters in code by implementing the `FormatterRegistrar` interface. You can then provide the set of registrars to use through `setFormatterRegistrars(Set)`.

Like all `FactoryBean` implementations, this class is suitable for use when configuring a Spring application context using Spring `<beans>` XML configuration files. When configuring the container with `@Configuration` classes, simply instantiate, configure and return the appropriate `FormattingConversionService` object from a `@Bean` method.

Since:
  3.0
Author:
  Keith Donald, Juergen Hoeller, Rossen Stoyanchev, Chris Beams

## Field Summary

### Fields inherited from interface org.springframework.beans.factory.FactoryBean

`OBJECT_TYPE_ATTRIBUTE`

## Constructor Summary

Constructors
Constructor
Description
`FormattingConversionServiceFactoryBean()`

## Method Summary

Modifier and Type
Method
Description
`void`
`afterPropertiesSet()`
`FormattingConversionService`
`getObject()`
`Class<? extends FormattingConversionService>`
`getObjectType()`
`boolean`
`isSingleton()`
`void`
`setConverters(Set<?> converters)`
Configure the set of custom converter objects that should be added.
`void`
`setEmbeddedValueResolver(org.springframework.util.StringValueResolver embeddedValueResolver)`
Set the StringValueResolver to use for resolving embedded definition values.
`void`
`setFormatterRegistrars(Set<FormatterRegistrar> formatterRegistrars)`
Configure the set of FormatterRegistrars to invoke to register Converters and Formatters in addition to those added declaratively via `setConverters(Set)` and `setFormatters(Set)`.
`void`
`setFormatters(Set<?> formatters)`
Configure the set of custom formatter objects that should be added.
`void`
`setRegisterDefaultFormatters(boolean registerDefaultFormatters)`
Indicate whether default formatters should be registered or not.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### FormattingConversionServiceFactoryBean

public FormattingConversionServiceFactoryBean()

## Method Details

### setConverters

public void setConverters(Set<?> converters)
Configure the set of custom converter objects that should be added.

Parameters:
  `converters` - instances of any of the following: `Converter`, `ConverterFactory`, `GenericConverter`

### setFormatters

public void setFormatters(Set<?> formatters)
Configure the set of custom formatter objects that should be added.

Parameters:
  `formatters` - instances of `Formatter` or `AnnotationFormatterFactory`

### setFormatterRegistrars

public void setFormatterRegistrars(Set<FormatterRegistrar> formatterRegistrars)

Configure the set of FormatterRegistrars to invoke to register Converters and Formatters in addition to those added declaratively via `setConverters(Set)` and `setFormatters(Set)`.

FormatterRegistrars are useful when registering multiple related converters and formatters for a formatting category, such as Date formatting. All types related needed to support the formatting category can be registered from one place.

FormatterRegistrars can also be used to register Formatters indexed under a specific field type different from its own <T>, or when registering a Formatter from a Printer/Parser pair.

See Also:
  - `FormatterRegistry.addFormatterForFieldType(Class, Formatter)`
  - `FormatterRegistry.addFormatterForFieldType(Class, Printer, Parser)`

### setRegisterDefaultFormatters

public void setRegisterDefaultFormatters(boolean registerDefaultFormatters)
Indicate whether default formatters should be registered or not.

By default, built-in formatters are registered. This flag can be used to turn that off and rely on explicitly registered formatters only.

See Also:
  - `setFormatters(Set)`
  - `setFormatterRegistrars(Set)`

### setEmbeddedValueResolver

public void setEmbeddedValueResolver(org.springframework.util.StringValueResolver embeddedValueResolver)
Description copied from interface: `EmbeddedValueResolverAware`
Set the StringValueResolver to use for resolving embedded definition values.

Specified by:
  `setEmbeddedValueResolver` in interface `EmbeddedValueResolverAware`

### afterPropertiesSet

public void afterPropertiesSet()

Specified by:
  `afterPropertiesSet` in interface `org.springframework.beans.factory.InitializingBean`

### getObject

@Nullable public FormattingConversionService getObject()

Specified by:
  `getObject` in interface `org.springframework.beans.factory.FactoryBean<FormattingConversionService>`

### getObjectType

public Class<? extends FormattingConversionService> getObjectType()

Specified by:
  `getObjectType` in interface `org.springframework.beans.factory.FactoryBean<FormattingConversionService>`

### isSingleton

public boolean isSingleton()

Specified by:
  `isSingleton` in interface `org.springframework.beans.factory.FactoryBean<FormattingConversionService>`