Определение набора спецификаций Java EE для заданных требований - пример для EJB, JPA и REST?
Я пытаюсь определить правильный набор технологий для разработки приложения, которое поддерживает следующее.
- Обеспечить возможности веб-службы (предпочтительно REST)
- Уметь обрабатывать обновления нескольких ресурсов данных в одной транзакции
- Имейте некоторую способность к сохранению формы.
Исходя из этих основных требований, мой текущий план состоит в том, чтобы создать службу на основе REST с использованием JAX-RS и JPA для обработки постоянства и использования EJB, чтобы иметь возможность обрабатывать несколько обновлений для различных ресурсов в одной транзакции.
Это правильный набор технологий или я делаю свое приложение более объемным.
Спасибо за любые предложения. Наконец, приложение будет развернуто на Websphere Application Server v8.5
2 ответа
Да, это звучит как разумный выбор технологий для вашего проекта. Все они являются частью Java EE, которая также предоставляет массу других полезных функций, так что она предоставляет некоторое пространство для "роста" вашего приложения, не беспокоясь о том, что вы увязли в огромном количестве библиотек разных производителей. На мой взгляд, использование Java EE не является поводом для беспокойства по поводу "громоздкости".
Поскольку приложение будет развернуто на WebSphere Application Server V8.5, нет необходимости ограничивать себя доступными технологиями, если они уже являются частью среды выполнения.
Однако я подумал о разработчиках, которые будут разрабатывать приложение и могут пострадать из-за времени, которое требуется для частых перезапусков, повторных развертываний и тому подобного. Нельзя сказать, что WAS 8.5 не может справиться с ними, но поскольку это полноценный сервер приложений, предназначенный для производственной среды, он может оказаться слишком сложным для вашей среды разработки. Если так, продолжайте читать.
Доступен более легкий профиль WAS - WebSphere Application Server 8.5 Liberty Profile. Он основан на базе кода WebSphere AS, имеет небольшую площадь и предназначен именно для клиентов, которые знают, что платформа развертывания - это WAS, но им нужно более легкое решение на их ноутбуках для разработки.
Он может быть очень хорошо приспособлен для ваших нужд, и, если Eclipse - это IDE, вы можете быть приятно удивлены, насколько стройнее стала среда разработки с Liberty Profile.