Запустите Spring4MVC с Angular 2 на одном сервере
Я новичок в angular2, я хочу знать, какова возможная структура файла для SpringMVC4 с angular 2?
Как показано на рисунке, он будет работать для углового 1.x но файловая структура Angular 2 совершенно другая и ее компонент управляется, и я использую файловую структуру angular 2, как показано ниже
Я много искал, и я обнаружил, что мы можем использовать передний конец(используя angular2) и задний конец (сервер-использование spring / springboot) отдельно, но нам нужно 2 сервера для запуска приложения. Например, Frontend: 192.168.100.1:4200 И Backend : 192.168.100.1:8080
Итак, есть ли способ или общая структура файлов для запуска angular2 и spring4MVC на одном сервере (например, 192.168.100.1:8080)?
спасибо заранее. Ответы будут оценены!
2 ответов
нет ответов до сих пор это нормально, у меня есть решение. Как я это сделал ?
вам нужно 2 контекстах.
(1) угловой проект 2 и
(2) Весна MVC
выполните следующие шаги для достижения нашей главной цели, чтобы запустить SPRINGMVC + Angular2 на одном сервере.
- создать обычный динамический веб-проект.
- добавить все зависимости, необходимые для весны или пользователя maven pom.в XML
-
открыть CMD, перейдите к angular2 приложение. Хит команды
НПМ установки а то
ng build или использовать ng build --prod для производства
эта команда создаст папку "dist", скопируйте все файлы, включая все папки.
вставьте эти файлы и папки в каталог WebContent.
последнее, что вам нужно изменить basehref="./" в индексе.формат html. Теперь вы готов к запуску сервера или вы можете развернуть файл войны и обслуживать его с tomcat или другими серверами.
Если вы используете веб-службы Rest и хотите запустить angular2 и spring на одном сервере,
нужно поставить webServiceEndPointUrl
согласно url вашего хоста. Например, если вы используете приложение на localhost: 8080, вам нужно сохранить url
webServiceEndPointUrl="http://localhost:8080/api/user"; по угловой стороне. После этого вы можете создавать и копировать вставьте в папку WebContent.
см. ниже изображение, структура файла для springMVC+ANGULAR2
Я знаю, что есть много недостатков, чтобы использовать этот способ для запуска приложений на одном сервере, но если требуется можно следовать этому.
Если вы измените что-нибудь на угловой стороне, вам нужно скопировать папку paste dist все время, а затем вы можете развернуть ее!
вы можете автоматизировать свое решение-просто используйте интерфейс-maven-плагин (С помощью которого вы можете установить nodejs и построить угловой проект) и maven-ресурсы-плагин чтобы скопировать содержимое каталога/angular/ dist / в корневой каталог .war-файл (см. Также в этой статье)
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>3.0.2</version>
<executions>
<execution>
<id>default-copy-resources</id>
<phase>process-resources</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<overwrite>true</overwrite>
<outputDirectory>${project.build.directory}/${project.artifactId}-${project.version}/</outputDirectory>
<resources>
<resource>
<directory>${project.basedir}/angular/dist</directory>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
и тогда вы можете использовать горячий перезагрузка функция (при разработке) на сервере nodejs, запущенная ng serve
С угловой CLI.