Spring Framework FAQ: Top Questions
20. How does Spring support internationalization (i18n)?
Spring provides i18n support using MessageSource
interface and resource bundles to manage locale-specific messages.
πΊοΈ Steps:
- Define
messages.properties
,messages_fr.properties
, etc. - Configure
ReloadableResourceBundleMessageSource
. - Inject it and retrieve messages using
getMessage()
.
π₯ Example:
@Bean
public MessageSource messageSource() {
ReloadableResourceBundleMessageSource ms = new ReloadableResourceBundleMessageSource();
ms.setBasename("classpath:messages");
ms.setDefaultEncoding("UTF-8");
return ms;
}
π Expected Output:
Returns localized messages based on the provided Locale.
π οΈ Use Cases:
- Creating multilingual web applications.
- Customizing error and validation messages.