Java использует класс ResourceBundle для поддержки интернационализации. ResourceBundle
может загружать его содержимое из файлов свойств на пути к классам. Чтобы предоставить файлы свойств для всех языков / стран, которые вам нужны, вам нужно несколько файлов свойств, каждый из которых имеет имя в этом формате baseName_languageCode_countryCode.properties
Все файлы свойств должны иметь одинаковое baseName . languageCode предназначен для указания языка и состоит из 2 символов нижнего регистра. countryCode предназначен для указания страны и состоит из 2 символов в верхнем регистре. Вы можете убедиться, что используете правильные коды, проверив значения, используемые в классе Locale . Чтобы предоставить файл свойств для французского языка (язык) и Франции (страна), это будет baseName _fr_FR.properties.
Spring использует интерфейс MessageSource для предоставления доступа к сообщениям. ResourceBundleMessageSource и подклассы обеспечивает интернационализируемый MessageSource
.
При настройке ResourceBundleMessageSource
в Spring вам нужно будет указать baseName и разместить файлы свойств где-нибудь в пути к классам. Spring вычисляет текущую локаль пользователя из браузера и использует ее для загрузки правильного файла свойств.