Боб области действия Spring

Как настроить бин, который будет создаваться один раз за запрос.

Я пытался сделать так:

   @Component
   @Scope(value = "request")
   public class TestBean {
        @PostConstruct
        public void init() {
             System.out.println("start request");
        }

        @PreDestroy
        public void onDestroy() {
             System.out.println("ends request");
        }
   }

Благодарю.

3 ответа

Решение

Попробуй это @Scope(value="request", proxyMode= ScopedProxyMode.TARGET_CLASS)

Для более подробной информации смотрите этот пост в блоге.

Попробуйте scopeName вместо значения

@Scope(scopeName = "запрос", proxyMode = ScopedProxyMode.TARGET_CLASS)

Вы можете настроить ваш компонент для запроса области видимости в конфигурации xml как

 <bean id="testBean" class="com.test.TestBean" scope="request">
    <aop:scoped-proxy/>
  </bean>

Tag aop: scoped-proxy будет использоваться для инъекции вашего компонента с использованием прокси. Это основанный на XML способ установки вашего компонента на запрос области.

Другие вопросы по тегам