Я хотел бы знать разницу между Struts 1.x и Struts 2.x
В чем разница между Struts 1.x и Struts 2.x
Ответ 1
Основное отличие состоит в том, что в Struts1.x запрос напрямую переходит к сервлету, тогда как в Struts2.x трафик запроса и ответа, хотя стек перехватчика или фильтр. Регулярная логика может быть помещена в классы фильтров, и разработчик может сосредоточиться на бизнес-логике. Помимо этого существуют и различия в структуре каталогов.
Лучше узнать различия между темами Struts1.x и Struts2.x. Здесь приведена ссылка http://www.geekinterview.com/question_details/64360:
1. Классы действий
В Struts 1.x классы действий должны расширять класс Action (или DispatchAction), а метод execute имеет номер параметра и возвращаемый тип ActionForward, но In struts 2.x класс действия также может быть простым pojo с использованием метода execute, возвращающего только строку без какого-либо входного параметра.
2. Зависимость сервлета
Контейнер не обрабатывает Struts2.x, в отличие от Struts1.x, действия как пара запроса/ответа и struts2.x действие все равно может получить доступ к исходному запросу и ответу.
3. Получение ввода
- В Struts1.x форма beans используются для определения свойств, геттеров и сеттеров, в struts2.x геттеры/сеттеры определены в самих классах действий.
- Класс Struts1.x beans должен расширять ActionForm или ValidatorForm, но Struts2.x beans также может быть POJO.
4. Тестируемость
- В методе Struts1.x execute() выдает API сервлета для тестирования.
- Struts2.x Зависимость впрыска используется для упрощения процесса тестирования.
5. Языки выражений
- Struts1.x JSTL как язык выражения, где Struts2.x использует OGNL (язык графических обозначений объектов) в качестве языка выражения который очень силен, чем JSTL.
- Struts2.x также может использовать JSTL.
6. Преобразование типов
- В свойствах Struts1.x находятся почти в форме String, конвертеры относятся к классу, которые не настраиваются.
- Struts 2.x использует OGNL для преобразования типов
7. Проверка
Проверка на стороне сервера производится в классах действий в Struts2.x гораздо проще.
Ответ 2
Это совершенно другая веб-структура... Struts2 - это в основном старый веб-сайт.
Некоторые отличия:
- Struts2 работает с POJO, не более ActionForms. Все атрибуты из запросов заполняются "стандартными" Java-классами.
- Действия Struts2 не связаны с API Servlet, они не получают параметры HttpServletRequest и HttpServletResponse в качестве параметров. Кроме того, они являются состояниями (действия Struts 1 были без гражданства).
- У Struts2 есть много улучшений, таких как Interceptor API, а также множество интеграций.
- Конфигурация полностью отличается.
Я рекомендую вам "выйти на пенсию" Struts1 в пользу современных веб-фреймворков.
Ответ 3
Перейдите по этой ссылке, это поможет вам много:
Ответ 4
Вы можете найти сравнение Struts 1 и Struts 2 на их веб-сайте.
http://struts.apache.org/2.1.6/docs/comparing-struts-1-and-2.html