Apache Struts

Apache Struts
Struts.png
Тип

Платформа програмування

Дизайнер

Apache Software Foundation

Операційна система

Кроссплатформне програмне забезпечення

Остання версія

2.3.4.1 ( 13 серпня 2012)

Ліцензія

Apache 2.0 license

Сайт

struts.apache.org (Англ.)

Apache Struts - фреймворк з відкритим вихідним кодом для створення Java EE веб-додатків. Грунтується на Java Servlet API і розширює його, в архітектурному плані реалізує (або дає можливість реалізувати) патерн MVC. Фреймворк створений Крейгом МакКланаханом і переданий Apache Foundation в травні 2000. Спочатку перебував у складі Apache Jakarta Project і був відомий як Jakarta Struts. З 2005 є проектом Apache верхнього рівня.


Призначення Apache Struts і його структура

Struts був створений для того, щоб чітко і контролер (який відповідає за передачу даних від моделі до подання і назад). Struts надає стандартний контролер - сервлет під ім'ям ActionServlet і різні засоби для створення сторінок уявлення. Розробник веб-додатки відповідає за написання коду моделі і створення конфігураційного файлу struts-config.xml, який пов'язує воєдино модель, уявлення і контролер.

Запити від клієнта передаються контролеру у вигляді "Actions" (дій), визначених у файлі конфігурації. Коли контролер отримує такий запит, він передає його відповідному Action класу. Останній взаємодіє з кодом Моделі і повертає контролеру "ActionForward", рядок, визначальну сторінку для відправлення клієнту. Інформація передається між моделлю і представленням у вигляді особливих JavaBeans. Багата бібліотека тегів дозволяє отримувати дані з бінов і записувати їх без Java коду.

Struts також підтримує i18n (інтернаціоналізацію), полегшує затвердження даних отриманих з веб-форми і надає механізм створення шаблонів під назвою "Tiles", який крім усього іншого дозволяє успадковувати веб-сторінки.