JWt (веб-инструментарий Java) - Википедия - JWt (Java web toolkit)
Оригинальный автор (ы) | Emweb |
---|---|
изначальный выпуск | 1.0.0 / декабрь 2005 г. |
Стабильный выпуск | 3.4.0 / 31 июля 2019 г.[1] |
Репозиторий | Репозиторий JWt |
Написано в | Ява |
Операционная система | Кроссплатформенность |
Тип | Веб-фреймворк |
Лицензия | Двойная лицензия: Стандартная общественная лицензия GNU или же Коммерческая лицензия |
Интернет сайт | www |
JWt (произносится как «сойка-уитти») Открытый исходный код виджет -центрический каркас веб-приложений для Язык программирования Java разработан Emweb. У него есть API, который использует установленные шаблоны разработки приложений с графическим интерфейсом. Модель программирования основана на компонентах и событийный, похожий на Качать.
Цель библиотеки - извлечь выгоду из модели компонентов с отслеживанием состояния, используемой в API настольных приложений, применяемых в веб-разработке, вместо традиционной модель – представление – контроллер (MVC) модель. Вместо того, чтобы использовать MVC на уровне страницы, MVC переносится на уровень отдельных компонентов.
Хотя в библиотеке используется модель разработки настольных приложений, она поддерживает специфические для Интернета функции, включая семантические URL-адреса, поддержка навигации по истории браузера, интернационализация, темы и стили.
Уникальной особенностью библиотеки является уровень абстракции модели рендеринга браузера. Библиотека использует Аякс для взаимодействия с браузерами, поддерживающими Ajax, при использовании обратной передачи в простой HTML-форме для других пользовательских агентов (для специальных возможностей и поисковых систем). При использовании метода прогрессивной начальной загрузки пользовательский интерфейс изначально отображается как простой HTML, а для браузеров с поддержкой Ajax он автоматически обновляется для использования Ajax для повышения интерактивности. Таким образом, это единственная серверная среда, которая реализует прогрессивное улучшение автоматически, и единственная структура Ajax с поисковая оптимизация (SEO) качества.[нужна цитата ]
JWt распространяется как jar-файл. Приложение JWt - это военный файл, который развертывается в соответствии со стандартами. контейнер сервлета.
Основные особенности
См. Список функций на домашней странице проекта для более подробного обзора.[2]
- Автоматический изящная деградация и прогрессивное улучшение
- Во всех современных браузерах приложение JWt является одностраничное приложение, с полной поддержкой навигации вперед / назад и закладок, но при этом полностью SEO.
- Поддерживает инициируемые сервером события (Комета ) и использует асинхронный ввод / вывод при развертывании в контейнере Servlet 3.0.
- Унифицированный API для 2D-рендеринга (SVG / HTML5 canvas / VML / PDF) с совместимостью с java.awt.Graphics2D
- Интегрированный PDF рендеринг для виджетов, графики (диаграмм) и HTML / CSS для создания отчетов
- Проверка как на стороне клиента, так и на стороне сервера
- Различные встроенные автоматические функции безопасности, чтобы избежать межсайтовый скриптинг и CSRF уязвимости.
- Поддержка темы через CSS или Twitter Bootstrap
- Доступные виджеты показаны в галерея виджетов
- API 3D-рисования для рендеринга WebGL с возвратом к рендерингу с ускорением на стороне сервера
- API-интерфейс 3D-диаграммы (поверхности, точки, гистограммы и т. Д.), Поддерживающий выбор, выделение пересечений, карты высот, изолинии и т. Д.
Пример кода
Привет, мир![3] пример полного исходного кода[4]
/* * Простой класс приложения hello world, демонстрирующий, как реагировать * к событиям, считывать ввод и давать обратную связь. */общественный учебный класс HelloApplication расширяет WApplication { общественный HelloApplication(WE Окружающая среда env) { супер(env); setTitle("Привет, мир"); getRoot().addWidget(новый WText("Ваше имя, пожалуйста ? ")); окончательный WLineEdit имяПравить = новый WLineEdit(getRoot()); имяПравить.setFocus(); WPushButton кнопка = новый WPushButton(«Приветствуй меня»., getRoot()); кнопка.setMargin(5, Сторона.Оставили); getRoot().addWidget(новый WBreak()); окончательный WText приветствие = новый WText(getRoot()); кнопка.щелкнул().addListener(это, новый Сигнал.Слушатель() { общественный пустота спусковой крючок() { приветствие.setText("Привет, " + имяПравить.getText()); } }); }}
Смотрите также
- Сравнение веб-фреймворков
- Wt, проект C ++, из которого получен JWt
Рекомендации
- ^ "JWt: Выпуск v3.4.0". webtoolkit.eu. 31 июля 2019 г.,. Получено 4 сентября, 2019.
- ^ "JWt, Java Web Toolkit - Emweb". www.webtoolkit.eu. Получено 27 октября 2019.
- ^ "JWt, Java Web Toolkit - Emweb". www.webtoolkit.eu. Получено 27 октября 2019.
- ^ "ИСХОДНЫЙ КОД ПРИМЕРА HELLO WORLD". www.webtoolkit.eu.
внешняя ссылка
- Домашняя страница проекта JWt
- Статья в журнале Dr Dobb's Journal, февраль 2008 г.
- Вступительная статья в CodeGuru, июнь 2008 г.