Лучшая серверная структура для тяжелых приложений AJAX Java

Есть миллионы фреймворков веб-приложений Java.

95% были разработаны до наступления современной эры разработки на основе AJAX / DHTML, а это означает, что эти новые методы были созданы, а не созданы.

Была ли построена с нуля какая-либо структура, например, Имеется в виду GWT + Extjs?

Если нет, то какой фреймворк лучше всего адаптировался к миру форм с динамическим числом полей и страниц, которые трансформируются на стороне клиента?

Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
14
0
8 796
10

Ответы 10

Я использую JSF и IceFaces. Хотя JSF имеет несколько ограничений, IceFaces, похоже, работает довольно хорошо и устранил некоторые проблемы с JSF.

Я еще не использовал действительно хороший фреймворк AJAX Java, хотя Эхо2 выглядит интересно.

Мне нравится полоски рамки. Он позволяет вам использовать любой набор инструментов javascript, который вы хотите.

Вот их документация по AJAX

Мне нравится комбинация JBoss Seam и Richfaces, особенно с инструментами JBoss, которые являются расширением Eclipse, что делает создание такого рода RIA невероятно простым.

В Википедии есть несколько полезных сравнений:

Сравнение фреймворков JavaScriptСписок фреймворков AJAX

Ваш выбор зависит от нескольких различных факторов, в том числе от того, хотите ли вы, чтобы «работа» выполнялась на стороне клиента (большинство фреймворков javascript) или на стороне сервера (echo2 и т. д.). Также стоит обратить внимание на такие инструменты, как OpenLaszlo, которые предоставляют Flash (я думаю) из коробки, но возвращаются к DHTML, если проигрыватель Flash отсутствует.

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

Если вы начинаете с нуля. Я бы сказал Google Web Toolkit. Я должен сказать, что это невероятно мощно. Вы продолжаете использовать большинство своих инструментов Java. Кроме того, вам не нужно дублировать код, который существует как на сервере, так и на клиенте, он просто компилируется по-разному для каждой области.

Я бы рассмотрел фреймворки в стиле REST, а также другие рекомендации здесь - Рестлет или Джерси могут быть хорошим выбором для бэкэнда, в то время как вы используете что-то вроде JQuery или GWT в интерфейсе. Обе структуры могут легко создавать JSON, а стиль REST обеспечивает четкую границу между вашим клиентским приложением и исходным кодом сервера; Я считаю, что JSF может сделать это разграничение довольно размытым.

DWR

Я использую это для динамического заполнения раскрывающихся списков и даже для их фильтрации на лету на основе ввода данных пользователем в других местах формы.

GWT довольно мощный и простой в использовании (все на Java, без кодирования Javascript / HTML / CSS). Если Google добьется своего, он станет доминирующим фреймворком / инструментом в разработке веб-приложений, и не зря. Он уже работает с Google Gears (который обеспечивает автономный доступ к веб-приложениям) и, скорее всего, будет оптимизирован для работы в Google Chrome.

Echo2 / Echo3 от Nextapp (www.nextapp.com) совершенно потрясающе.

Преимущества перед GWT:

1) Это не ограничивается подмножеством java, таким как GWT 2) Легче (по моим оценкам) научиться 3) Имеет чрезвычайно надежную дизайн-студию для проектирования практически перетаскиванием. 4) Это очень быстро и очень хорошо работает во всех браузерах платформ. 5) Вы можете написать свое приложение, используя либо java-скрипт, либо java. 6) У него есть отличные и простые методы обработки событий и действий.

Лично я думаю, что для любого веб-приложения, в которое вы пытаетесь интегрировать Java и быструю доставку, я без колебаний выберу Echo3 или Echo2.

Аптана имеет фрейм на стороне сервера, называемый Джаксер. Это с их сайта:

Jaxer's core engine is based on the same Mozilla engine that you'll find in the popular Mozilla Firefox browser. This means that the execution environment you use on both the client and the server are the same. It's Ajax all the way through and through. That means you only need one set of languages -- the languages that are native to the browser -- to create entire applications.

Этот фреймворк с открытым исходным кодом и имеет очень хорошую IDE, основанную на Eclipse. Aptana также работает над реализацией Javascript для ActiveRecord под названием ActiveRecordJS. Потенциально вы можете использовать это как на стороне клиента, так и на стороне сервера с их фреймворком.

GWT - один из лучших фреймворков AJAX, которые я когда-либо использовал. Самым важным в этой структуре является то, что она поддерживается Google. И все знают "Кто такой Google?"

GWT is used by many products at Google, including Google AdWords and Google
Wallet. It's open source, completely free, and used by thousands of 
enthusiastic developers around the world.

GWT предоставляет богатые виджеты, которые можно использовать для создания любого приложения. Практически все виджеты у них есть.

Еще один важный момент - GWT постоянно развивается, и у него также есть стабильная версия, что очень хорошо. Другое дело, что Google также выпустил GWT-Material, что опять же очень хорошо, потому что все движутся в сторону материала.

Я надеюсь, что это поможет вам!!!

Другие вопросы по теме