Более интересными и, возможно, подходящими ссылками являются Джерси и Весна, особенно интеграция Джерси в Весну или различия. В этой статье мы могли бы ответить на это любопытство. Догоните исходный код, который мы внедрили Spring и Jersey. На самом деле нет никакой разницы в реализации. Интеграция Spring с Jersey и интеграция Jersey с Spring означают одно и то же, что касается кода .
Кратко проинформируйте о Jersey: Jersey RESTful Web Services framework – это платформа с открытым исходным кодом, производственным качеством, для разработки веб-сервисов RESTful на Java, которая обеспечивает поддержку API-интерфейсов JAX-RS и служит эталонной реализацией JAX-RS (JSR 311 и JSR 339).
Java API для веб-служб RESTful (JAX-RS) – это спецификация API языка программирования Java, которая обеспечивает поддержку при создании веб-служб в соответствии с архитектурным шаблоном Representational State Transfer (REST). JAX-RS использует аннотации для упрощения разработки и развертывания клиентов и конечных точек веб-служб. JAX-RS является официальной частью Java EE.
В этой статье предполагается, что вы разбираетесь в Джерси и думаете об интеграции Spring в свое приложение Jersey. Рисунок-1. Трехуровневая архитектура приложений.
Рисунок-1. Трехуровневая архитектура приложений.
В этом примере бизнес-уровень и уровень сохраняемости могут показаться избыточными, но в реальном приложении уровень обслуживания также обрабатывает бизнес-логику домена, а не просто “поиск данных”, но и “выполнение манипуляций с данными”. Уровень сохраняемости должен быть связан только с взаимодействиями с базой данных, а не с какой-либо бизнес-логикой. В приложении REST нет уровня представления. Но означает ли это, что эта архитектура не применима к приложениям REST? Абсолютно нет. Мы все равно должны придерживаться этого разделения задач в приложениях REST. Это просто хороший дизайн. В Spring его REST-слой реализован в его MVC-фреймворке. Фреймворк MVC широко известен своими возможностями MVC с использованием контроллеров. Но с небольшой настройкой контроллеров и используемых аннотаций контроллеры могут легко стать контроллером REST, где вместо возвращаемых моделей и представлений вы возвращаете объекты RESTful representation. Более ценная информация приведена на рисунке-2. Многоуровневая архитектура, основанная на “Законе Деметры”.
Рисунок-2. Многоуровневая архитектура.
- первый уровень – это поддержка REST, реализованная с помощью Jersey, выполняющая роль фасада и делегирующая логику бизнес-уровню
- бизнес-уровень – это место, где происходит логика
- уровень доступа к данным – это место, где происходит связь с постоянным хранилищем (в нашем случае с базой данных MySQL).
Исходный код:
@SpringBootApplication public class JerseyApplication implements WebApplicationInitializer { public static void main(String[] args) { SpringApplication.run(JerseyApplication.class, args); } @Override public void onStartup(ServletContext sc) throws ServletException { sc.setInitParameter("contextConfigLocation", "noop"); AnnotationConfigWebApplicationContext context = new AnnotationConfigWebApplicationContext(); context.register(SpringConfig.class); sc.addListener(new ContextLoaderListener(context)); sc.addListener(new RequestContextListener()); }
Ссылка:
- ПОЧЕМУ И КАК ИСПОЛЬЗОВАТЬ SPRING С ДЖЕРСИ?
- Учебное пособие – Разработка и реализация REST API на Java с использованием Jersey и Spring
Оригинал: “https://dev.to/urunov/truly-there-is-no-difference-in-implementation-integrating-spring-with-jersey-and-integrating-jersey-with-spring-m2k”