Apache Struts 1

Фреймворк веб-приложений с открытым исходным кодом
Apache Struts
Оригинальный автор(ы)Крейг МакКланахан
Разработчик(и)Фонд программного обеспечения Apache
Первоначальный выпускМай 2000 ; 24 года назад ( 2000-05 )
Окончательный релиз
1.3.10 / 8 декабря 2008 г. ; 16 лет назад ( 2008-12-08 )
Репозиторий
  • github.com/weblegacy/struts1
Написано вЯва
Операционная системаКроссплатформенный
ПлатформаКроссплатформенность ( JVM )
ПреемникApache Struts 2
ЛицензияЛицензия Apache 2.0
Веб-сайтweblegacy.github.io/struts1/

Apache Struts 1 — это фреймворк веб-приложений с открытым исходным кодом для разработки веб-приложений Java EE . Он использует и расширяет API Java Servlet, чтобы побудить разработчиков принять архитектуру модель–представление–контроллер (MVC). Первоначально он был создан Крейгом МакКланаханом и передан в дар Apache Foundation в мае 2000 года. Ранее находившийся в Apache Jakarta Project и известный как Jakarta Struts , он стал проектом Apache верхнего уровня в 2005 году.

Фреймворк WebWork отделился от Apache Struts с целью предложить улучшения и усовершенствования, сохранив при этом общую архитектуру исходного фреймворка Struts. Однако в декабре 2005 года было объявлено, что Struts снова объединится с WebWork. WebWork 2.2 был принят как Apache Struts 2 , который достиг своего первого полного релиза в феврале 2007 года.

В дополнение к текущей и постоянно развивающейся версии-преемнице Struts 2, с 2022 года существует клон Struts 1, который обновляет устаревшую структуру Struts 1 до текущего стека, совместимого с Jakarta EE . [1]

Цели и обзор дизайна

В стандартном веб-приложении Java EE клиент обычно обращается к серверу через веб-форму . Затем информация либо передается сервлету Java , который взаимодействует с базой данных и выдает ответ в формате HTML , либо передается в документ JavaServer Pages (JSP), который смешивает код HTML и Java для достижения того же результата. Оба подхода часто считаются неподходящими для крупных проектов, поскольку они смешивают логику приложения с представлением и затрудняют обслуживание.

Цель Struts — отделить модель (логику приложения, взаимодействующую с базой данных) от представления (страниц HTML, представленных клиенту) и контроллера (экземпляра, который передает информацию между представлением и моделью). Struts предоставляет контроллер (сервлет, известный как ActionServlet) и облегчает написание шаблонов для представления или уровня представления (обычно в JSP, но также поддерживаются XML / XSLT и Velocity ). Программист веб-приложения отвечает за написание кода модели и за создание центрального файла конфигурации struts-config.xml, который связывает вместе модель, представление и контроллер.

Запросы от клиента отправляются контроллеру в форме «Действий», определенных в файле конфигурации; если контроллер получает такой запрос, он вызывает соответствующий класс Действия, который взаимодействует с кодом модели, специфичным для приложения. Код модели возвращает «ActionForward», строку, сообщающую контроллеру, какую страницу вывода отправить клиенту. Информация передается между моделью и представлением в форме специальных JavaBeans . Мощная библиотека пользовательских тегов позволяет ему из уровня представления читать и записывать содержимое этих bean-компонентов без необходимости использования какого-либо встроенного кода Java.

Struts классифицируется как фреймворк веб-приложений на основе запросов Модели 2. [2]

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

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

Ссылки

  1. ^ Графф, Стефан (2024). "Struts1 - Reloaded". Github . Получено 2024-02-13 .
  2. ^ Шан, Тони (2006). «Таксономия Java Web Application Frameworks». Международная конференция IEEE 2006 года по проектированию электронного бизнеса (ICEBE'06) . Труды Международной конференции IEEE 2006 года по проектированию электронного бизнеса (ICEBE 2006). стр.  378–385 . doi :10.1109/ICEBE.2006.98. ISBN 0-7695-2645-4. Получено 2010-10-10 .

Библиография

  • Джеймс Холмс: Struts: Полный справочник , McGraw-Hill Osborne Media, ISBN 0-07-223131-9 
  • Билл Дадни и Джонатан Лер: Джакартские ловушки , Wiley, ISBN 978-0-471-44915-7 
  • Билл Сиггельков: Jakarta Struts Cookbook , O'Reilly, ISBN 0-596-00771-X 
  • Джеймс Гудвилл, Ричард Хайтауэр : Professional Jakarta Struts , Wrox Press , ISBN 0-7645-4437-3 
  • Джон Карнелл и Роб Харроп: Pro Jakarta Struts, второе издание , Apress, ISBN 1-59059-228-X 
  • Джон Карнелл, Джефф Линвуд и Мачей Завадски: Профессиональные приложения Struts: создание веб-сайтов с помощью Struts, ObjectRelationalBridge, Lucene и Velocity , Apress, ISBN 1-59059-255-7 
  • Тед Хастед и др.: Struts in Action , Manning Publications Company, ISBN 1-930110-50-2 
  • Сборка и проверка Struts View (формат PDF).
  • Стефан Визнер: Изучение Jakarta Struts 1.2 , Packt Publishing, 2005 ISBN 1-904811-54-X 
  • Официальный сайт
Взято с "https://en.wikipedia.org/w/index.php?title=Apache_Struts_1&oldid=1235099841"