Пользовательский уровень i18n с использованием JPA (спящий режим) - PullRequest
0 голосов
/ 07 июня 2018

У меня есть веб-приложение, использующее J2EE / JSF, JPA (Hibernate) и базу данных MySQL.

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

I 'Я ищу совет о том, как реализовать первую половину этого, то есть, как хранить несколько языковых версий, используя hibernate, с минимумом faff / и минимальным снижением производительности.Рад использовать библиотеки ОС и плагины для спящего режима, чтобы предотвратить повторное изобретение колеса.Также рад, если есть простое решение, которое может быть реализовано с использованием стека, который у меня уже есть ...

РЕДАКТИРОВАТЬ:

Если вы собираетесь понизить / закрыть голосование, пожалуйста, не стесняйтесь оставитькомментарий, объясняющий почему?Люди не могут улучшить вопросы, если они не знают, что не так

1 Ответ

0 голосов
/ 13 июня 2018

Я думаю, что вы можете сделать это самостоятельно относительно легко, без необходимости искать какие-то рамки.Просто сохраните ваши элементы данных, которые должны быть переведены в одну сущность вместе со значением по умолчанию и со ссылкой на это во второй сущности, которая содержит перевод для конкретного iso-кода.Именованный запрос в первом объекте может затем предоставить вам перевод для данного ключа или перевод по умолчанию.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...