Если я использую java.text. MessageFormat для локализованных сообщений без заполнителей?

Сортировка в хронологическом порядке проста, если вы используете метку времени Unix, например, 1547608677790 с использованием метода .orderBy . Тем не менее, это оставляет вам потенциальную гору запросов для повторения (по одному на каждого друга).

Итак, я думаю, вы хотите переосмыслить схему хранилища данных.

Воспользуйтесь преимуществами облачных функций для триггеров Firebase . Когда пишется новый пост, пусть облачная функция подсчитает, кто все должен его видеть. Каждый пользователь может иметь свойство типа массива, содержащее все unread-posts, read-posts и т. Д.

Нечто подобное будет быстрым и наименее затратным.

11
задан Peter Hilton 30 January 2009 в 14:56
поделиться

5 ответов

Просто запишите свою собственную реализацию MessageFormat без этой раздражающей функции. Можно посмотреть на код Регистратора SLF4J.

У них есть своя собственная версия средства форматирования сообщения, которое может использоваться, как сопровождается:

logger.debug("Temperature set to {}. Old temperature was {}.", t, oldT);

Пустые заполнители могли использоваться с упорядочиванием по умолчанию и нумероваться для некоторых случаев локализации, где различные языки делают перестановки слов или части предложений.

2
ответ дан 3 December 2019 в 11:52
поделиться

В конце мы решили обойти проблему одинарной кавычки, всегда используя 'изогнутые' кавычки:

warning.item = This item\u2019s {0} is not valid.
2
ответ дан 3 December 2019 в 11:52
поделиться

Используйте 'символ вместо' для заключения в кавычки. Мы используем все это время без проблем.

Используйте MessageFormat только при необходимости в нем иначе они только чрезмерно увеличивают размер кода и не имеют никакого дополнительного значения.

1
ответ дан 3 December 2019 в 11:52
поделиться

Другая альтернатива... При загрузке файла свойств просто перенесите inputstream в FilterInpuStream, который сгибает каждую кавычку.

-1
ответ дан 3 December 2019 в 11:52
поделиться

По-моему, непротиворечивость важна для этого вида вещи. Файлы свойств и MessageFormat уже имеют много ограничений. Если Вы находите, что они беспокоящие Вас могли бы "скомпилировать" Ваши файлы свойств для генерации правильно сформированных. Но я сказал бы, идут с использованием MessageFormat везде. Таким образом, поскольку Вы поддерживаете код, который Вы не должны волновать, о котором отформатированы строки и которые не являются. Становится более просто иметь дело с, так как можно вручить от обработки сообщения библиотеке и не волноваться о деталях на высоком уровне.

0
ответ дан 3 December 2019 в 11:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: