2017-02-13 2 views
2

Я искал образец структуры проекта, если у вас есть, например, Java/Spring backend и front end, например Angular2.Как создать проект Spring с помощью Angular frontend?

Моя первая мысль была, что они будут идти в двух отдельных папках верхнего уровня, как

src/ 
ui/ 

Таким образом, я бы обрабатывать как в своих собственных приложений, как они на самом деле чувствуют себя (так как логика в угловой будет отличаться от того, что происходит на бэкэнд).

Но потом я подумал о том, что при работе с задним концом это будет затруднено, чтобы найти то, что на самом деле является представлением переднего плана данного пакета. Поэтому я подумал об использовании структуры, такой как

src/main/java 
src/main/javascript 

И затем следуйте структуре папок Java-подобных пакетов. Это упростило бы видеть, где в пользовательском интерфейсе стоит одна вещь и какой контроллер/служба отвечает за ответы на свои запросы.

Однако, похоже, я не могу представить себе, какой из двух будет лучше для будущего проекта. Есть ли статья/руководство, которое вы можете порекомендовать мне для таких ситуаций (гибридные технологии и структура проекта, или, возможно, это конкретный стек, о котором я не знаю и уже имеет некоторые определенные хорошие практики).

+0

Чтобы разобраться в этом, я думаю, что угловой является больше автономным приложением, чем частью java. Поскольку я не буду использовать рендеринг на стороне сервера или что-то в этом роде, мое личное мнение заключается в том, что у него должна быть своя собственная папка ui и просто следовать аналогичным именам в папке java. Тем не менее, я не уверен, что, когда я войду в проект, я увижу это как устойчивую и масштабируемую структуру, поэтому я прошу вас, ребята. – Mackiavelli

+1

Я использую многомодульный градиент (но будет делать то же самое с Maven), с двумя модулями: frontend и backend. Бэкэнд имеет стандартную структуру Java/Spring. Интерфейс имеет стандартную структуру углового типа. Задачи градиента модуля frontend просто завершают команды. Задача war/jar бэкэнда зависит от сборки frontend и включает в себя артефакты, созданные в папке dist frontend в war/jar. –

ответ

0

Я последовал подход от JHipster, где Angular2-Structure находится под

src/main/webapp/app 

Преимущество заключается в том, что вы можете объединять несколько фронтэнда-технологии в веб-приложение под угловым, и держать все отделено, но в одном проекте. Я думаю, что это делает его надежным до высокого уровня сложности.

Смежные вопросы