Spring + Angular - razem czy oddzielnie?

0

Cześć,
buduję sobie do nauki prostą aplikację web w Spring boot i angularze. Jaki jest najlepszy sposób uruchamiania całej aplikacji? Lepiej uruchomić aplikację backend'ową i całkiem oddzielnie serwer angulara na innym porcie i łączyć się do aplikacji angulara czy może wbudować uruchamianie całości w pom.xml czy gradle, by podczas uruchomenia spring boota od razu łączyć się z aplikacją angulara?

1
  1. Za pomocą Spring boota wystawiasz API RESTowe
  2. Z poziomu Angulara robisz http requesty na api springowe i obrabiasz sobie pobrane dane w dowolny sposób ;)

EDIT: ok chyba się pospieszyłem. Lokalnie robisz tak jak mówisz, apka springowa i apka angularowa na 2 różnych portach. Jak będziesz to deployował np na AWS Elastic Beanstalk to skompilowane sourcy angularowe wrzucasz do jara/wara javowego. (pogoogluj jak to zrobić)

1

Pewnie masz osobny projekt z angularem i osobny projekt ze spring bootem.
Dodaj do springowych application.properties property, które ci określa, gdzie są te statyczne resource'y, żebyś jak ta ofiara nie kopiował za każdym razem do resourców, no bez przesady.
Z tego co kojarze, to property to spring.resources.static-locations (albo troche inaczej sie nazywa) i określasz tam po prostu ścieżkę do projektu angularowego

2

W przypadku pluginu gradlowego do sklejania war'a jest to z buta w przypadku jara trzeba dopisać 3 linijki.
Korzystaliśmy z takiego rozwiązania produkcyjnie i się sprawdzało.

Dla gradla musisz dodać plugin do nodejs który będzie sobie pobierał wersje noda a nastepnie uruchamiał build aplikacji frontendowej, a potem w przypadku war'a w gradlu podajesz tylko lokalizacje w przypadku jara musisz dopisać aby wziął tą paczkę frontendową i wrzucił do jarki. Jest pełno opisu na necie jak to robić.

1 użytkowników online, w tym zalogowanych: 0, gości: 1