Привет Всем!…
Это мой первый пост на этой платформе, так что будьте мягки в разделе комментариев. В этом посте я расскажу, как настроить Джерси с помощью Spring.
Вы когда-нибудь задумывались, как настроить Джерси в проекте Spring?. Не нашли точного решения для этого?. Если да, то вы находитесь в нужном месте. Я предполагаю, что вас устраивают API Spring и REST. В этой статье я расскажу, как настроить майку в вашем проекте.
Создайте проект загрузки Spring с помощью https://start.spring.io/ . Не забудьте добавить зависимость spring-boot-starter-jersey в свой pom.xml
.
org.springframework.boot spring-boot-starter-jersey
После успешного создания проекта Spring Boot Пришло время создать ресурсы (т.е. Ресурсы означают, что вы можете связать его с контроллером, который мы использовали для вызова в SpringMVC). Создайте каждый ресурс в виде интерфейса и реализуйте его. как показано ниже.
Пусть класс POJO PublicationResource.java
быть:
public class PublicationResource { private int publicationId; private String publicationTitle; private String publicationAuthor; // Getters and setters & Constructors }
Создать интерфейс ресурса InformationResource.java
:
@Path("information") @Consumes(MediaType.APPLICATION_JSON) @Produces(MediaType.APPLICATION_JSON) public interface InformationResource{ @GET ListgetPublications(); }
Теперь создайте класс InformationResourceImpl.java
путем внедрения InformationResource.java
Интерфейс.
@Named public class InformationResourceImpl implements InformationResource{ @Override public ListgetPublications() { return Arrays.asList(new PublicationResource(1, "Title1", "Vinay"), new PublicationResource(2, "Title2", "Hegde")); }
Здесь я жестко запрограммировал значения ресурсов публикации. В режиме реального времени он должен поступать из базы данных, в этом случае создайте бизнес-службу и вызовите эту службу из InformationResourceImpl.java
с помощью инъекции.
Теперь в игру вступила основная часть конфигурации. Как вы будете настраивать свои ресурсы в Джерси. Для этого создайте один класс JerseyConfig.java
путем расширения конфигурации ресурса ( импортировать org.glassfish.jersey.сервер. ResourceConfig
), где нам нужно зарегистрировать наши ресурсы. Вы можете зарегистрировать свой ресурс двумя способами.
- Зарегистрируйте весь базовый пакет в
JerseyConfig.java
:
@Configuration @ApplicationPath("/resource") public class JerseyConfig extends ResourceConfig { public JerseyConfig() { packages("your.base.package"); } }
Это зарегистрирует все ваши ресурсы, хотя я столкнулся с проблемой при запуске встроенного сервера tomcat с этим, поэтому я не буду рекомендовать этот способ, вместо этого мы можем зарегистрировать все ресурсы явно. (Ах… Немного беспокойно?) .
2. Зарегистрируйте ресурсы явно:
@Configuration @ApplicationPath("/resource") public class JerseyConfig extends ResourceConfig { public JerseyConfig() { register(InformationResource.class); } }
Здесь @ApplicationPath позволит нам определить базовый путь для всех наших ресурсов. Пример: Как только приложение запустится, оно будет запущено на порту с номером 8080.Мы можем сделать запрос на получение, нажав https://localhost:8080/resource/information . Здесь вы можете наблюдать после 8080, был добавлен/ресурс
, который поступает из @ApplicationPath . Все наши API-интерфейсы будут иметь /ресурсы
перед конечной точкой, которую вы определили.
После выполнения HTTP ПОЛУЧИТЕ – https://localhost:8080/resource/information результатом будет:
[ { "publicationId": 1, "publicationTitle": "Title1", "publicationAuthor": "Vinay" }, { "publicationId": 2, "publicationTitle": "Title2", "publicationAuthor": "Hegde" } ]
Ваше здоровье!. Вы создали свой первый API-интерфейс Джерси. Просто, не правда ли?:). Пожалуйста, предоставьте свои комментарии или отзывы.
Счастливого кодирования!.
Оригинал: “https://dev.to/vinayhegde2013/jersey-configuration-with-spring-4514”