JPA - динамическое создание диспетчера сущностей с типом транзакции JTA

У меня есть несколько баз данных с одинаковой структурой таблиц, каждая из которых предназначена для разных языков. Я использую JPA с типом транзакции JTA. Я хотел бы создать динамически новое соединение с базой данных (с уровня приложения), когда я добавляю новый язык (новую базу данных). Я знаю, как создать новый менеджер сущностей, но только для типа транзакции RESOURCES_LOCAL. Возможно ли это с JTA?


person user460697    schedule 29.04.2011    source источник


Ответы (1)


Я думаю, у вас есть недостаток дизайна, из-за которого все выглядит сложнее, чем есть на самом деле. Если у вас есть выбор, лучшее, что можно сделать, хотя это требует некоторой работы, - это интернационализировать вашу базу данных. Вкратце, добавьте столбец «язык» там, где это необходимо, и просто создайте одну базу данных со всем. Когда вы выбираете интересующие вас биты для одного языка, просто добавьте это языковое ограничение в свое предложение where.

То, что вы просите, было бы довольно сложно реализовать и поддерживать.

person ymajoros    schedule 29.04.2011
comment
привет спасибо за ответ. Я знаю, что у этого приложения сложный дизайн, но оно уже существует. У меня нет разрешения на его изменение, поэтому мне все равно нужно найти способ решить эту проблему. - person user460697; 29.04.2011
comment
вы можете смоделировать лучший дизайн, используя виды. Я бы сделал все, что мог, чтобы изменить дизайн ;-) - person ymajoros; 29.04.2011