Рекомендация по реализации простого бэкэнда REST с простым веб-интерфейсом на Java.

Я создаю приложение для Android, которое отслеживает позиции пользователя (позиции загружаются через веб-службу REST).

Теперь мне нужно создать бэкенд для этого сервера. Итак, серверная часть должна анализировать входящие данные JSON и помещать их в базу данных SQL.

Мне также нужен административный интерфейс для серверной части, чтобы поддерживать некоторые простые операции CRUD над таблицей SQL.

Так что в целом это не сложный бэкэнд. Я хочу, чтобы все было максимально просто и не использовало большие фреймворки. Я немного читал о Vaadin , который кажется очень простым способом создания административного интерфейса.

Итак, с учетом этих требований, какие фреймворки вы бы порекомендовали для анализа данных JSON и помещения их в базу данных, а затем для создания для них графического интерфейса администратора?

Ответы (2)

Для веб-сервиса я бы порекомендовал вам реализацию спецификации Java для веб-сервисов JAX-RS , например Jersey , эталонную реализацию этой спецификации.

Преимущество использования реализации спецификации заключается в том, что было бы легко переключить инфраструктуру, если, например, Джерси в один прекрасный день простаивает, поскольку существует несколько конкурентов. Реализация на Джерси хорошо задокументирована, и список рассылки довольно активен. Мне было легко учиться.

В качестве легкого веб-фреймворка рекомендую Apache Wicket . Я должен добавить, что обычно мне не очень нравится Wicket, но для простых веб-страниц, которые не нужно масштабировать и которые вряд ли станут сложными, вы можете добиться хороших результатов с небольшими усилиями. Кроме того, в сети распространяется довольно много примеров. С другой стороны, Vaadin — действительно хорошо спроектированный фреймворк, но для его изучения требуется больше усилий. Таким образом, выбор зависит от ваших личных предпочтений и времени, которое у вас есть.

Ваадин

Да, я настоятельно рекомендую Vaadin программистам Java или другим разработчикам, которые хотят создавать веб-приложения, не изучая тонкости HTTP, HTML, CSS, DOM, JavaScript, WebSocket и так далее. Vaadin визуализирует пользовательский интерфейс вашего веб-приложения, используя эти стандартные веб-технологии от вашего имени, в то время как вы пишете свою бизнес-логику и формы-макеты-виджеты на Java.

Смотрите мои ответы на подобные вопросы здесь и здесь .

В частности, для работы с базой данных посмотрите на SQLContainerдля подключения к базам данных SQL. Если вам нравится Java Persistence API (JPA) (мне нет), ознакомьтесь с файлом JPAContainer.

Для отображения виджета, отображающего сетку данных для представления табличных данных базы данных, см. почтенный Tableкомпонент и его более новый двоюродный брат, Grid. У Gridвиджета даже есть собственная страница тщеславия .

Попробуйте демо- версии Vaadin , включая демо -версию Sampler и Theme Reindeer Theme .

введите описание изображения здесь