Samouczek dotyczący wbudowanego serwera internetowego: Jak uruchomić wbudowany serwer HTTP Jersey podczas uruchamiania aplikacji Java

Opublikowany: 2014-07-01

Jakiś czas temu napisałem tutorial Jak zbudować usługę RESTful w Javie używając JAX-RS i Jersey. Po wykonaniu wszystkich szczegółowych kroków musisz wdrożyć swój projekt na Tomcat Web Server i wszystko powinno być w porządku. Dzięki temu samouczkowi powinieneś być w stanie po prostu stworzyć usługę RESTFul w około 20 minut.

Ale co powiesz na zrobienie tego w ~5 mins ? Również czasami bardzo trudno jest skonfigurować Tomcata dla twojej aplikacji internetowej.

Istnieje wiele powodów:

  1. Może być konieczne skopiowanie plików binarnych Tomcata do środowiska programistycznego.
  2. Jeśli nie masz poprawnie skonfigurowanych wszystkich ustawień, aplikacja Tomcat może nie działać.
  3. Musisz wyeksportować swój projekt jako .war project
  4. Co zrobić, jeśli nie chcesz wdrażać swojej aplikacji na Tomcat i uruchamiać prostego .jar?
  5. Z projektem .jar – jak uruchomisz serwer http? Czy Twoja aplikacja zaakceptuje przychodzące połączenie REST?

Dodatkowo: Jak dodać filtr CORS do swojej aplikacji internetowej Jersey?

Musisz dodać Cross-origin resource sharing do swojej aplikacji Web Jersey. Postępuj zgodnie z tym samouczkiem:

Co to jest współużytkowanie zasobów między źródłami (CORS) — jak dodać je do serwera internetowego Java Jersey?

Cóż, istnieje proste rozwiązanie. Istnieje sposób na utworzenie bardzo prostego serwera HTTP (obsługującego tylko GET/POST) w Javie przy użyciu samego interfejsu Java SE API, bez pisania kodu do ręcznego analizowania żądań HTTP i ręcznego formatowania odpowiedzi HTTP.

Korzystając z com.sun.net.httpserver.HttpServer , powinniśmy być w stanie osiągnąć wszystkie powyższe.

Zacznijmy:

Krok 1:

Utwórz nowy projekt Java „ CrunchifyJerseyEmbeddedHTTPServer ”.

Java-Project-CrunchifyJerseyEmbeddedHTTPServer

Krok 2:

Przekształć go w projekt Maven. To uprości nam życie na dodawaniu zależności. Postępuj zgodnie z tym samouczkiem, aby przekonwertować istniejący projekt Java na projekt Maven.

Krok 3:

W tym projekcie potrzebujemy tylko jednej zależności jersey-server .

Serwer Jersey — zależność od Maven

Krok 4:

Utwórz JerseyEmbeddedHTTPServerCrunchify.java w pakiecie com.crunchify.tutorial .

Krok 5:

Stwórz swój REST API. Utwórz klasę Java CrunchifyAPI.java w tym samym pakiecie „ com.crunchify.tutorial

Krok 6:

I to wszystko. Teraz kliknij prawym przyciskiem myszy JerseyEmbeddedHTTPServerCrunchify.java i „ Run it as Java Application ”.

Krok 7:

Sprawdź wynik. Odwiedź ten adres URL: http://localhost:8085/api i powinieneś zobaczyć wynik w przeglądarce.

Odpowiedź przeglądarki serwera HTTP Jersey

Mam nadzieję, że spodoba ci się ten samouczek. Chcesz udostępnić jakiś komentarz?

Jestem tu, żeby słuchać. Dzięki.