#spring-boot #internationalization #thymeleaf #properties-file
Вопрос:
Поэтому я пытаюсь создать еще один файл .property (называемый labels.properties), который я могу использовать в Thymeleaf следующим образом:
<div th:text=#{property.from.labels}></div>
Прямо сейчас я просто добавляю labels.properties в корневую папку ресурсов, пока она не работает. Цель этого состоит в том, что я хочу отделить файл свойств, который обрабатывает сообщения об ошибках, от текстов для меток и кнопок.
- Возможно ли это?
- если да, то как это сделать?
- если снова «да», могу ли я выполнить интернационализацию, например, добавить labels_ja.properties (на японском языке)?
Комментарии:
1. Я думаю, что вам нужен i18n для этой цели, проверьте это: baeldung.com/spring-boot-internationalization
Ответ №1:
Вы можете настроить имя (и расположение) пакетов сообщений, настроив spring.messages.basename
свойство. Например:
spring.messages.basename=labels
Поступая таким образом, Spring будет искать сообщения внутри classpath:labels.properties
и classpath:labels_{locale}.properties
, например classpath:labels_ja.properties
.
Если вы хотите использовать это в дополнение к обычным сообщениям.свойства, вы можете использовать значение, разделенное запятой:
spring.messages.basename=messages,labels
Первый в этом списке, разделенном запятыми, будет иметь приоритет над остальными. Если у вас есть a property.from.labels
в обоих messages.properties
и labels.properties
, в messages.properties
этом примере будет выбран тот, который внутри.
Это также можно найти в документации по интернационализации.
Комментарии:
1. что делать, если я помещу labels.properties в папку, например resources/new_folder/labels.properties? нужно ли мне добавлять новую папку/метки весной.messages.basename?