Apache Struts

Фреймворк веб-приложений с открытым исходным кодом
Apache Struts 2
Разработчик(и)Фонд программного обеспечения Apache
Первоначальный выпуск10 октября 2006 г. ; 18 лет назад ( 2006-10-10 )
Стабильный релиз
6.4.0 / 19 апреля 2024 г. ; 9 месяцев назад [1] ( 2024-04-19 )
Репозиторий
  • github.com/apache/struts
Написано вЯва
Операционная системаКроссплатформенный
ПлатформаКроссплатформенность ( JVM )
ПредшественникApache Struts 1
ТипВеб-фреймворк
ЛицензияЛицензия Apache 2.0
Веб-сайтstruts.apache.org

Apache Struts 2 — это фреймворк веб-приложений с открытым исходным кодом для разработки веб-приложений Java EE . Он использует и расширяет API Java Servlet, чтобы побудить разработчиков принять архитектуру модель–представление–контроллер (MVC). Фреймворк WebWork отделился от Apache Struts 1 с целью предложить улучшения и усовершенствования, сохранив при этом общую архитектуру исходного фреймворка Struts. В декабре 2005 года было объявлено, что WebWork 2.2 был принят как Apache Struts 2, который достиг своего первого полного релиза в феврале 2007 года. [2]

Struts 2 имеет историю критических ошибок безопасности, [3] многие из которых связаны с использованием технологии OGNL ; [4] некоторые уязвимости могут привести к выполнению произвольного кода . В октябре 2017 года сообщалось, что неспособность Equifax устранить уязвимость Struts 2, о которой сообщалось в марте 2017 года, впоследствии была использована в утечке данных , которая была раскрыта Equifax в сентябре 2017 года . [5] [6]

Функции

  • Простые действия на основе POJO [7]
  • Упрощенная тестируемость
  • Потокобезопасный
  • Поддержка AJAX
    • плагин jQuery
    • Плагин Dojo Toolkit [8] (устарел)
    • Проверка Ajax на стороне клиента
  • Поддержка шаблонов [9]
  • Поддержка различных типов результатов [10]
  • Легко расширяется с помощью плагинов
    • Плагин REST [11] (действия на основе REST, URL-адреса без расширений)
    • Плагин Convention (конфигурация действий через Conventions и Annotations)
    • Плагин Spring [12] ( внедрение зависимостей )
    • Плагин гибернации
    • Поддержка в дизайне
    • Плагин JFreechart (диаграммы)
    • Плагин jQuery (поддержка Ajax, виджеты пользовательского интерфейса, динамическая таблица, диаграммы)
    • плагин Рим

Смотрите также

Цитаты

  1. ^ "Объявления 2024" . Получено 17 июня 2024 г.
  2. О Apache Struts 2 Архивировано 14 января 2014 г. на Wayback Machine
  3. ^ "Apache Struts: Список уязвимостей безопасности". cvedetails.com . Получено 2 октября 2017 г.
  4. ^ Муньос, Альваро (14 января 2014 г.). «Struts 2: OGNL Expression Injections». HPE.com . Архивировано из оригинала 3 октября 2017 г. Получено 2 октября 2017 г.
  5. ^ Чиргвин, Ричард (2 октября 2017 г.). «Equifax не удалось найти или исправить уязвимые реализации Struts». The Register . Получено 2 октября 2017 г. .
  6. ^ Гудин, Дэн (2 октября 2017 г.). «Серия задержек и крупных ошибок привела к масштабному взлому Equifax». Ars Technica . Получено 2 октября 2017 г.
  7. ^ Ньютон 2009, стр. 9, §1 Struts и гибкая разработка - Действия.
  8. ^ Ньютон 2009, стр. 258, §13 Многофункциональные интернет-приложения — теги Dojo.
  9. ^ Ньютон 2009, стр. 294, §12 Комплексное тестирование — Обход: стойки и пружины в двух словах.
  10. ^ Ньютон 2009, стр. 57–81, §4 Результаты и типы результатов — теги Dojo.
  11. ^ Newton 2009, стр. 249–255, §12 Темы и шаблоны — плагин REST.
  12. ^ Ньютон 2009, стр. 294, §13 Комплексное тестирование — Обход: стойки и пружины в двух словах.

Ссылки

  • Ньютон, Дэйв (2009). Apache Struts 2 Разработка веб-приложений . Packt Publishing. ISBN 978-1-84719-339-1.
  • Официальный сайт
Взято с "https://en.wikipedia.org/w/index.php?title=Apache_Struts&oldid=1269948154"