2016-09-05 4 views
-1

Я создаю новое веб-приложение Java с использованием Spring MVC framework, и в то же время я создаю мобильное приложение с использованием гибридной структуры (Cordova и т. Д.).). Все модули находятся в одном проекте в Intellij, и я использую Maven как репозиторий. Я хотел бы поделиться бизнес-логикой между веб-приложением и мобильным приложением, но я не могу перенести весенний сервисный слой из Spring MVC. Я попытался создать новый Java-модуль в проекте, но я не могу понять, как я могу связать модуль между двумя приложениями, используя правильную архитектуру.Как переместить бизнес-логику из Spring MVC-архитектуры

Могу ли я перенести сервисный слой из веб-приложения на внешний Java-модуль? Если я не могу этого сделать, как я могу управлять общей бизнес-логикой через веб-приложение и мобильное приложение?

Задать мне любые сомнения.

Спасибо!

+1

Создайте отдельный модуль jar и добавьте этот модуль в качестве зависимости в pom.xml вашего приложения webapp и мобильного приложения. – GreyGoose

+1

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

+1

Попытайтесь использовать трехуровневую архитектуру, которая означает зависимость как: _client tier (ui, уровень контроллера) -> уровень бизнес-логики (уровень сервиса) -> dao (уровень репозитория) _. И, как сказал @GreyGoose, вы можете использовать отдельный модуль jar для всего этого слоя (для ui вы можете использовать войну). – Optio

ответ

0

Это очень распространенный вопрос, который задают люди, новые для Java.

Каков мой подход; когда я разрабатываю приложение, я пишу классы бизнес-действий и контроллеров в отдельных пакетах и ​​ссылаюсь на них через JAR.

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

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

  • Нет связанных вопросов^_^