Веб-фреймворк Java

В компании, в которой я работаю, для серверной части используется Spring. Весна твердая, но она вызывает у меня головную боль. Я хочу попробовать более простую веб-инфраструктуру Java для личного проекта, который можно масштабировать позже.

Я пользователь Linux, но в настоящее время я использую Windows 10, я попробовал Grails, и дело в том, что его настройка сложна, Cygwin и прочее, плюс единственная IDE, которая действительно поддерживает Grails, - это платная версия Inellij, поэтому я не буду использовать Это.

Я попробовал play framework, но он дает мне ошибки при работе в Windows плюс тот факт, что play использует scala, а я не знаю scala, вы можете использовать play с java, но у вас будут проблемы в будущем, так говорят люди.

Spark выглядит как микро-фреймворк с некоторыми включенными библиотеками, не уверен, что я пойду на это. Что я хочу:

  1. Настоящая веб-инфраструктура Java с открытым исходным кодом, полностью поддерживаемая набором инструментов eclipse или spring, а maven является его менеджером зависимостей. Никаких коммерческих ограничений.
  2. Простота настройки в Windows, простота в работе, не требует сложного обучения.
  3. Может быть легко использован для создания остальных API и одностраничных приложений.
  4. Хорошо работает с Junit и AngularJS.
  5. Активно поддерживается, хорошая документация.

Это плюс, если у него есть достойное сообщество либо на stackoverflow, либо на форумах.

Ответы (1)

Ваадин

Vaadin — это Java-фреймворк для создания настольных веб-приложений, написанных на чистом Java.

Ваше приложение живет на стороне сервера, выполняясь на чистой Java в JVM.

Пользовательский интерфейс создается во время выполнения сервлетом инфраструктуры Vaadin и удаленно отображается на стороне клиента с помощью стандартных веб-технологий (HTML, CSS, JavaScript, DOM, WebSocket и т. д.).

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

Удовлетворит, пожалуй, все ваши потребности. Работает как одностраничное приложение . Открытый исходный код, бесплатно, очень активно поддерживается специализированной компанией с растущей базой из более чем 150 000 разработчиков, использующих его, и отличной документацией в The Book Of Vaadin . Теперь полностью на основе Maven для использования в любой среде IDE, включая NetBeans, Eclipse и IntelliJ.

Vaadin построен на основе проверенной технологии Google Web Toolkit (GWT) . Компания Vaadin участвует в управлении GWT.

Вы должны создать свой REST API отдельно, если это необходимо. Тогда ваше приложение Vaadin будет клиентом, выполняющим вызовы этого REST API, если вы того пожелаете.

Конечно, вы можете использовать JUnit, так как ваше веб-приложение полностью написано на Java. Кроме того, компания продает продукт TestBench , инструмент для автоматизированного тестирования пользовательского интерфейса вашего веб-приложения на всех платформах и во всех браузерах. (Я еще не использовал этот продукт.)

Фреймворк Vaadin не ограничивает использование сторонних библиотек или виджетов. Наоборот, они предоставляют инфраструктуру для посторонних, таких как вы, для создания собственных виджетов и подключения их к Vaadin . Они поощряют эту практику, вплоть до предоставления онлайн-каталога таких «дополнений» . Вы можете опубликовать свои собственные дополнения, если хотите. Сейчас доступны сотни, как визуальные виджеты, так и невизуальные компоненты. Иногда некоторые из этих надстроек могут даже включаться в сам фреймворк Vaadin.

Исследуйте обширные живые демонстрации.

vaadin кажется интересным, но у меня есть несколько вопросов, vaadin продает свои собственные компоненты, такие как диаграммы, можно ли использовать jchart или charts.js, или они ограничивают использование сторонних библиотек, чтобы продавать свои собственные? и еще вопрос, если я хочу разработать нативное мобильное приложение, мне нужно купить vadin touchkit. Можно ли использовать vaadin на сервере и ionic во внешнем интерфейсе для разработки собственных мобильных приложений, ничего не покупая?
похоже на создание приложения для Android
@Lynob Нет, никаких запретов на сторонние библиотеки. Наоборот, поощрение. Смотрите мою правку.
@Lynob Я не думаю, что имеет смысл использовать что-то вроде ionic во внешнем интерфейсе, поскольку весь смысл Vaadin состоит в том, чтобы отображать на стороне клиента веб-технологии пользовательский интерфейс, определенный на стороне сервера Java. Кроме того, если фреймворк Vaadin не для вас, команда Vaadin внедрила инновации, предоставив некоторые сложные виджеты Vaadin для самостоятельного использования в других веб-фреймворках. Элементы Vaadin построены на технологии Polymer и работают с привязкой данных Angular2.
Я определенно буду использовать, если мне не нужно создавать нативные приложения, а элементы vaadin потрясающие, большое спасибо!