public interface MessageSource
Spring provides two out-of-the-box implementations for production:
ResourceBundleMessageSource,
 built on top of the standard ResourceBundle
 ReloadableResourceBundleMessageSource,
 being able to reload message definitions without restarting the VM
 ResourceBundleMessageSource, 
ReloadableResourceBundleMessageSource| Modifier and Type | Method and Description | 
|---|---|
| String | getMessage(MessageSourceResolvable resolvable,
          Locale locale)Try to resolve the message using all the attributes contained within the
  MessageSourceResolvableargument that was passed in. | 
| String | getMessage(String code,
          Object[] args,
          Locale locale)Try to resolve the message. | 
| String | getMessage(String code,
          Object[] args,
          String defaultMessage,
          Locale locale)Try to resolve the message. | 
@Nullable String getMessage(String code, @Nullable Object[] args, @Nullable String defaultMessage, Locale locale)
code - the code to lookup up, such as 'calculator.noRateSet'. Users of
 this class are encouraged to base message names on the relevant fully
 qualified class name, thus avoiding conflict and ensuring maximum clarity.args - an array of arguments that will be filled in for params within
 the message (params look like "{0}", "{1,date}", "{2,time}" within a message),
 or null if none.defaultMessage - a default message to return if the lookup failslocale - the locale in which to do the lookupMessageFormatString getMessage(String code, @Nullable Object[] args, Locale locale) throws NoSuchMessageException
code - the code to lookup up, such as 'calculator.noRateSet'args - an array of arguments that will be filled in for params within
 the message (params look like "{0}", "{1,date}", "{2,time}" within a message),
 or null if none.locale - the locale in which to do the lookupNoSuchMessageException - if the message wasn't foundMessageFormatString getMessage(MessageSourceResolvable resolvable, Locale locale) throws NoSuchMessageException
MessageSourceResolvable argument that was passed in.
 NOTE: We must throw a NoSuchMessageException on this method
 since at the time of calling this method we aren't able to determine if the
 defaultMessage property of the resolvable is null or not.
resolvable - the value object storing attributes required to resolve a messagelocale - the locale in which to do the lookupNoSuchMessageException - if the message wasn't foundMessageFormat