Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Каково использование Set‹Class‹?›› resources = new java.util.HashSet‹›();

Автор вопроса: Dhanushka SamarasingheОтветов: 1

Каково использование этой строки кода в остальных API Set<Class<?>> resources = new java.util.HashSet<>();

@ApplicationPath("/service")
public class ApplicationConfig extends Application {
@Override
public Set<Class<?>> getClasses() {

    Set<Class<?>> resources = new java.util.HashSet<>();

    System.out.println("REST configuration starting: getClasses()");

    //features
    //this will register Jackson JSON providers
    resources.add(org.glassfish.jersey.jackson.JacksonFeature.class);


    //more code.....
}
  • Он инициализирует resources новым HashSet. Вы только об этом спрашиваете или о чем-то другом? Ted Hopp 22.06.2018
  • Что вы подразумеваете под "каким использованием?" Вы имеете в виду "какова цель?" или "как мне использовать?" sprinter 22.06.2018
  • да как пользоваться? Dhanushka Samarasinghe 22.06.2018

javajax-rsjakarta-eejava-ee-7

Ответы

Ответ 1 · cassiomolin

Класс Application определяет компоненты приложения JAX-RS. Подклассы Application могут переопределять getClasses() для зарегистрируйте набор корневых ресурсов, поставщиков и классов объектов, используемых приложением.

Простейшая возможная реализация выглядит следующим образом:

@ApplicationPath("api")
public SampleApplication extends Application {

}

В приведенном выше примере классы ресурсов или поставщики не зарегистрированы, поэтому среда выполнения JAX-RS будет сканировать путь к классам на наличие компонентов JAX-RS, аннотированных @Path и @Provider и зарегистрирует их автоматически.

Подробности см. в этом ответе.


Set<Class<?>> означает Set, который содержит Classфайлов неизвестных типов (это выражается ? подстановочным знаком). В Учебниках по Java от Oracle вы найдете целый раздел о универсальные шаблоны. Я призываю вас посмотреть.

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы