org.springframework.binding.convert.converters
Class FormattedStringToNumber
java.lang.Object
org.springframework.binding.convert.converters.StringToObject
org.springframework.binding.convert.converters.FormattedStringToNumber
- All Implemented Interfaces:
- Converter, TwoWayConverter
public class FormattedStringToNumber
- extends StringToObject
A converter for common number types such as integers and big decimals. Allows the configuration of an explicit number
pattern and locale.
Works with a general purpose DecimalFormat
instance returned by calling
NumberFormat.getInstance(Locale)
by default. This instance supports parsing any number type generally and
will not perform special type-specific logic such as rounding or truncation. Subclasses may override.
Will coerse parsed Numbers to the desired numberClass as necessary. If type-coersion results in an overflow
condition; for example, what can occur with a Long being coersed to a Short, an exception will be thrown.
- Author:
- Keith Donald
- See Also:
NumberFormat
,
DecimalFormat
FormattedStringToNumber
public FormattedStringToNumber()
FormattedStringToNumber
public FormattedStringToNumber(Class numberClass)
setNumberFormatFactory
public void setNumberFormatFactory(NumberFormatFactory numberFormatFactory)
- Sets the factory that returns the
NumberFormat
instance that will format numbers handled by this
converter.
- Parameters:
numberFormatFactory
- the number format factory
getLenient
public boolean getLenient()
- If this Converter is "lenient" in parsing number strings. A lenient converter does not require that all
characters in the String be parsed successfully. Default is false.
- Returns:
- the lenient flag
setLenient
public void setLenient(boolean lenient)
- Sets if this Converter should parse leniently.
- Parameters:
lenient
- the lenient flag