Привет Всем!…
Это мой первый пост на этой платформе, так что будьте мягки в разделе комментариев. В этом посте я расскажу, как настроить Джерси с помощью 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
List getPublications();
}
Теперь создайте класс InformationResourceImpl.java путем внедрения InformationResource.java Интерфейс.
@Named
public class InformationResourceImpl implements InformationResource{
@Override
public List getPublications() {
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”