Какие символы следует экранировать в application.properties в Spring?

Некоторое время назад я обнаружил проблему, которая, похоже, связана с application.properties в моем приложении java spring. На локальных машинах разработки мы используем простые файлы application.yml, которые скомпилированы в приложение (я полагаю?), Но при развертывании на производстве мы используем более безопасные свойства. Кажется, что некоторые из них неправильно прочитаны. Итак, у меня вопрос: какие символы запрещены в файле application.properties? Как мне избежать этих персонажей?

Если проблемные символы - гласные с ударением (áéíóú и т. д.), То этот вопрос может иметь значение.

jsheeran 23.11.2018 09:20

К сожалению, это не так - у меня мало символов @! #, Но мне было интересно, какие символы, кроме акцентированных, читаются неправильно

mkubacki 23.11.2018 09:47
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
1
2
531
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Формат YAML поддерживает UTF-8 по умолчанию, тогда как файлы свойств должен быть закодирован и читается в кодировке ISO-8859-1 по определению. Таким образом, любой символ, отличный от ISO-8859-1, вызовет у вас проблемы, если вы не избежите их в файлах .properties.

Вы экранируете символы Юникода в файлах свойств, используя их шестнадцатеричный код с префиксом «\ u». Например, «ä» будет кодироваться как \u00E4, а снеговик, ☃, будет закодирован как \u2603. Вы можете найти escape-коды, например, здесь.

Другие вопросы по теме