2017-01-12 24 views
0

Я стараюсь использовать интеграцию Spring и Jersey. Но я смущен о облаках. Для весны по умолчанию используется Singleton. И для диапазона по умолчанию для Джерси - запрос.Интеграция и весы весны Джерси

Например:

import org.springframework.context.annotation.Scope; 
import org.springframework.stereotype.Component; 

// The Java class will be hosted at the URI path "/myresource" 
@Path("/myresource") 
@Component 
@Scope("request") 

public class MyResource { 

    // The Java method will process HTTP GET requests 
    @GET 
    // The Java method will produce content identified by the MIME Media 
    // type "text/plain" 
    @Produces("text/plain") 
    public String getIt() { 
     return "Hi there!"; 
    } 
} 

Компонент аннотации делают класс боб Spring Bean.Spring по умолчанию Singleton и джерси по умолчанию области видимости запроса.

Возникла проблема: Каков размер этого компонента.

  • Если я поставил @Scope («запрос»), это делает «область запроса».

  • И если я не ставил @Scope («запрос»), какова фактическая область действия?

ответ

1

Как вы сказали, вы сделаете MyResource Весеннюю Bean, поэтому область обрабатывается весной.

  • С @Scope («запрос»): объем вашего боб будет «запрос»
  • Без @Scope («запрос»): объем вашей фасоли будет «синглтон "(весна по умолчанию)

Независимо от того, используете ли вы CXF или Jersey с пружиной, они используются только для программирования конечных точек JAX-RS (а не для управления компонентами).

EDIT: Я нашел это в документации:

Поскольку конечная точка является Spring @Component его жизненный цикл управляется Spring и вы можете @Autowired зависимостей и придать внешний конфигурацию с @Стоимость. Сервлет-сержант будет зарегистрирован и , сопоставленный по умолчанию. Вы можете изменить отображение, добавив @ApplicationPath в свой ResourceConfig.

ссылка: 27.2 JAX-RS and Jersey

 Смежные вопросы

  • Нет связанных вопросов^_^