Для вашего случая, если вам нужен ваш собственный клиентский компонент, вы можете сделать это следующим образом. Но в таком случае businessObject не требуется.

ображений эффективности я заинтересован в ограничении количества потоков, которые одновременно используют компоненты контекста приложения Spring (я не хочунеограниченный количество потоков, обрабатывающих в моемограниченное Память).

я нашелВот (весенняя документация) способ достичь этого путем объединения компонентов в стиле EJB, выполнив следующее:

Объявите целевой компонент как область действия «прототип».Объявите провайдера пула, который будет поставлять ограниченное количество объединенных целевых экземпляров.Объявите «ProxyFactoryBean», функция которого мне не понятна.

Вот объявление этого бобов:

<bean id="businessObjectTarget" class="com.mycompany.MyBusinessObject" 
    scope="prototype">
  ... properties omitted
</bean>

<bean id="poolTargetSource" class="org.springframework.aop.target.CommonsPoolTargetSource">
  <property name="targetBeanName" value="businessObjectTarget"/>
  <property name="maxSize" value="25"/>
</bean>

<bean id="businessObject" class="org.springframework.aop.framework.ProxyFactoryBean">
  <property name="targetSource" ref="poolTargetSource"/>
  <property name="interceptorNames" value="myInterceptor"/>
</bean>

Моя проблема заключается в том, что, когда я объявлю другой компонент для использования объединенных экземпляров "businessObjectTarget", как мне это сделать? Я имею в виду, когда я пытаюсь сделать что-то вроде этого:

<bean id="clientBean" class="com.mycompany.ClientOfTheBusinessObject">
  <property name="businessObject" ref="WHAT TO PUT HERE???"/>
</bean>

Какой должна быть стоимость "ref" ??

Ответы на вопрос(0)

Ваш ответ на вопрос