Вы просто спрашиваете, как хранить символы UTF-8/16 в БД? в mysql нужно просто убедиться, что вы строите с поддержкой UTF8 и установить его по умолчанию, или указать его на уровне столбца или таблицы. Я сделал это в Oracle и MySQL раньше. Создайте таблицу, вырежьте и вставьте в нее некоторые данные i18n и посмотрите, что произойдет ... возможно, вы уже настроены ..
или я полностью упускаю твою точку зрения?
редактировать:
, чтобы быть более точным ... Я обычно реализую таблицу из трех столбцов ... язык, ключ, значение ... где "значение" содержит потенциально иностранные слова или фразы ... "язык" содержит некоторый языковой ключ и «ключ» - это английский ключ (т. е. login.error.password.dup) ... язык и ключ индексируются ...
Затем я построил интерфейсы на подобной структуре, которая показывает каждый ключ со всеми его переводами (значениями) ... он может стать причудливым и включать контрольные журналы и «грязные» маркеры и все остальные вещи, которые нужно включить переводчики и люди, занимающиеся вводом данных, чтобы использовать это ..
Редактировать 2:
Теперь, когда вы добавили информацию о тегах JSTL, я понимаю немного больше ... Я сам никогда этого не делал ... но я нашел эту старую информацию на theserverside ...
HttpSession session = .. [get hold of the session]
ResourceBundle bundle = new PropertyResourceBundle(toInputStream(myOwnProperties)) [toInputStream just stores the properties into an inputstream]
Locale locale = .. [get hold of the locale]
javax.servlet.jsp.jstl.core.Config.set(session, Config.FMT_LOCALIZATION_CONTEXT, new LocalizationContext(bundle ,locale));