Новый объект bean-компонента для каждого вызова в весенней загрузке - PullRequest
0 голосов
/ 05 мая 2020

Я работаю в приложении весенней загрузки, где у меня есть один уровень контроллера, один уровень сервиса для бизнес-логики c, затем вызов переходит на другой уровень сервиса, который взаимодействует с некоторыми внешними сервисами REST.

Flow Something like this

На последнем уровне, где я подключаюсь к внешним службам REST, я использую restTemplete, но получая объект restTemplete из bean-компонента с некоторой безопасностью SSL и аутентификация.

Что-то вроде этого в Service C

  @Autowired
private RestTemplate gcssRestTemplate;

и bean-компонент, который возвращает объект restTemplate

@Bean()
RestTemplate gcssRestTemplate(RestTemplateBuilder restTemplateBuilder)
        throws KeyStoreException, NoSuchAlgorithmException, KeyManagementException {

    return restTemplateBuilder.build());
    }

Теперь я собираюсь сделать это в некоторых способ, при котором каждый раз я получаю новый объект restTemplete, для каждого вызова метода уровня обслуживания «C», скажем, getGETResponse (), который фактически использует этот restTemplete для вызова внешнего мира.

I попытался создать bean-компонент с помощью области «прототип», но это не сработало, как я ожидал.

Может ли кто-нибудь предложить какой-либо выход, с помощью которого я могу указать, когда когда-либо вызывается новый вызов на последнем уровне службы (serve c на картинке) для метода «getGETResponse ()», нового объекта restTemplete Будем ли мы с этим справляться.

...