В базовом современном мире приложений Java EE оно разбито на несколько уровней, где у вас есть 4 основных уровня
+--------------------+
| Presentation |
+--------------------+
| Controller/Actions |
+--------------------+
| Business Delegate |
| (Service) |
+--------------------+
| Data Access Layer |
+--------------------+
| Database |
+--------------------+
Ваши приложения должны быть разделены на эти слои с самого начала, так что вы можете в любой момент времени заменить любой слой, не затрагивая ни одного из его родственных слоев.
Пример: если вы использовали JDBC для уровня доступа к данным, вы сможете заменить его на Hibernate, не затрагивая бизнес-делегата или уровень базы данных. Преимущество использования такой архитектуры заключается в возможности совместной работы с несколькими технологиями. Ваш бизнес-делегат (сервисный уровень) должен иметь возможность общаться с веб-сервисом и обрабатывать обработку приложения, даже не обращаясь к браузеру!
Что касается использования JSP в качестве уровня представления, существуют и другие доступные технологии, такие как скорость , freemarker , как уже упоминалось выше, у гобелена также есть собственный механизм рендеринга. Вы можете использовать XML + XSLT также для визуализации пользовательского интерфейса. Существуют также приложения для управления пользовательским интерфейсом, такие как Tiles и sitemesh , которые помогают интегрировать различные технологии в разные компоненты страницы и отображать их как одно.
Вы также можете использовать легковесные качающиеся компоненты с JNLP и разрабатывать корпоративное приложение в стиле рабочего стола. Все, что нам нужно, это немного воображения и требования клиента, и мы можем использовать буквально все что угодно в качестве уровня представления.