Есть ли способ решить, какую реализацию EJB использовать во время выполнения, когда у вас более одной реализации?Я не могу использовать аннотации или дескриптор развертывания, потому что логика не известна до времени выполнения.
Допустим, у меня есть следующие реализации EJB: MyEJBFoo
MyEJBBar
, оба реализуют MyEJB
бизнес-интерфейс.Как я могу по-прежнему выполнять внедрение зависимостей этого EJB, если используемая реализация известна до времени выполнения, скажем, с флагом, называемым DEV_MODE
= TRUE / FALSE, хранящимся в пакете ресурсов, и если это правда, он должен использовать MyEJBFoo
, и еслитогда это ложь MyEJBBar
.
Я думал о фабричном паттерне, но я не уверен, что это лучший способ сделать это.