Size: a a a

2020 June 25

o

oxid in pro.jvm
Привет, нужна помощь с архитектурой и спрингом 😉 Значится есть  меня сервис от которого хочется создать несколько наследников, и наследников этих хочется выбирать в зависимости от параметрво которые хранятся в @RequestScope бине (от параметра запроса вообщем).  ЧТо обычно делают в таком случае? если наследника выбирать в очередном @RequestScope бине, то это не работает, потмоу что они передаются иногда в не сервлетные потоки и там падают с ошибкой что бин вне скопа. Накидайте идей, что первое в голову приходит 😉
источник

A

Artjom Kalita in pro.jvm
что простите ?
источник

WT

Waldemar Tsiamruk in pro.jvm
если у вас есть набор бинов который вы как-то хотите выбирать
источник

WT

Waldemar Tsiamruk in pro.jvm
но у них интерфейс
источник

WT

Waldemar Tsiamruk in pro.jvm
просто сделайте Map с этими бинами
источник

WT

Waldemar Tsiamruk in pro.jvm
спринг инжектанет то что надо туда, и уже по ключу(имя бина)
источник

WT

Waldemar Tsiamruk in pro.jvm
можно достать
источник

NG

Nikita Gryzlov in pro.jvm
еще есть Qualifier... но не уверен, что он тут поможет
источник

WT

Waldemar Tsiamruk in pro.jvm
надо ситуационно
источник

WT

Waldemar Tsiamruk in pro.jvm
я так понял)
источник

A

Artjom Kalita in pro.jvm
Можно сделать лист с типом интерфейса добавить какой-то метод интерфейса для фильтрации в зависимости от чего-либо и таким образов доставать нужный бин и совершать с ним действие
источник

I

Ilia in pro.jvm
Artjom Kalita
Можно сделать лист с типом интерфейса добавить какой-то метод интерфейса для фильтрации в зависимости от чего-либо и таким образов доставать нужный бин и совершать с ним действие
+. Так обычно делаю
источник

OK

Oleg Koskin in pro.jvm
oxid
Привет, нужна помощь с архитектурой и спрингом 😉 Значится есть  меня сервис от которого хочется создать несколько наследников, и наследников этих хочется выбирать в зависимости от параметрво которые хранятся в @RequestScope бине (от параметра запроса вообщем).  ЧТо обычно делают в таком случае? если наследника выбирать в очередном @RequestScope бине, то это не работает, потмоу что они передаются иногда в не сервлетные потоки и там падают с ошибкой что бин вне скопа. Накидайте идей, что первое в голову приходит 😉
источник

WT

Waldemar Tsiamruk in pro.jvm
Ilia
+. Так обычно делаю
мне с мапой както больше нравится
источник

WT

Waldemar Tsiamruk in pro.jvm
есть доклад на эту тему
источник

WT

Waldemar Tsiamruk in pro.jvm
spring patterns
источник

WT

Waldemar Tsiamruk in pro.jvm
источник

AM

Aleksander Melnichni... in pro.jvm
oxid
Привет, нужна помощь с архитектурой и спрингом 😉 Значится есть  меня сервис от которого хочется создать несколько наследников, и наследников этих хочется выбирать в зависимости от параметрво которые хранятся в @RequestScope бине (от параметра запроса вообщем).  ЧТо обычно делают в таком случае? если наследника выбирать в очередном @RequestScope бине, то это не работает, потмоу что они передаются иногда в не сервлетные потоки и там падают с ошибкой что бин вне скопа. Накидайте идей, что первое в голову приходит 😉
Сделайте бин композит - наследник интерфейса, каким-либо образом инжектите в него список своих бинов наследников. Во время каждого вызова метода композитного бина делайте логику по выбору конкретного наследника. Можно сделать прокси и передать InvocationHandler - чтобы не писать для каждого метода эту логику
источник

AM

Aleksander Melnichni... in pro.jvm
Первое что пришло в голову.
источник

AM

Aleksander Melnichni... in pro.jvm
Можно еще прикрутить AOP, для логики прокси. Но не особо нужно, поинткат будет на все методы конкретной реализации. Вам решать как делать.
источник