2009-08-14 4 views
5

Недавно я добавил Struts 1.3 в мое приложение на Tomcat. Вот мои наблюдения,Каковы преимущества Struts

  1. MVC. Servlet/JSP делает это отлично для меня, где JSP - это вид, а сервлет - контроллер. Я не вижу никакой пользы для получения сопоставления из файла XML, поскольку наше сопоставление очень статично.
  2. Форма действия. Я вижу некоторые преимущества формы действия, но не огромные.
  3. Теги. Я уже использую JSTL и не вижу никакого преимущества, используя теги Struts.

Так что я думаю об удалении Struts. Кто-нибудь может подумать о других преимуществах, которые я, возможно, пропустил?

+2

Снимите его. Struts - это наследие. Никто, кроме строгого ограничения, не должен выбирать Struts для новой реализации. – SteveD

+0

+1 полностью согласен с stevendick –

+0

Спасибо за все отзывы. Я принял решение удалить его. –

ответ

11

Лично я сам предпочитаю jsp/servlet, но теоретически Struts имеет некоторые преимущества. Вот некоторые из преимуществ, о которых я знаю, вы могли бы упомянуть их уже, но я подумал, что было бы лучше, если бы я перечислил их всех здесь.

  1. Централизованная файловая конфигурация. Значения struts/mapping представлены в XML или файлах свойств. Эта свободная связь означает, что многие изменения могут быть сделаны без изменения или перекомпиляции Java-кода, и что оптовые изменения могут быть сделаны путем редактирования одного файла. Этот подход также позволяет разработчикам Java и Web сосредоточиться на своих конкретных задачах (внедрение бизнес-логики, представление определенных значений клиентам и т. Д.) Без необходимости знать общую структуру системы.

  2. Форма фасоль.

  3. Bean Tags. Struts предоставляет набор пользовательских тегов JSP, которые позволяют легко выводить свойства компонентов JavaBeans.

  4. HTML-теги. Struts предоставляет набор пользовательских тегов JSP для создания HTML-форм, связанных с компонентами JavaBeans. Эта ассоциация bean/form служит в двух полезных целях:

    • Он позволяет получать начальные значения поля формы из объектов Java.
    • Он позволяет вам повторно отображать формы с некоторыми или всеми ранее введенными значениями.
  5. Форма проверки поля. У Struts есть надежный, расширяемый валидатор, который можно использовать для равномерной проверки полей формы. Эта проверка может выполняться на сервере (в Java) или на сервере и на клиенте (в JavaScript).

  6. «Сантехника», содержащаяся в рамках Struts. Сопоставление параметров HTTP-запроса с объектами Java обрабатывается, например, Struts. Вам не обязательно это делать. Это позволяет больше сосредоточиться на проблеме домена вместо создания инфраструктуры.

  7. Хорошая документация & много книг. Если вам нужно покинуть проект и/или кто-то другой должен его поддерживать, то использование хорошо известной и хорошо документированной структуры упростит эту работу. Основанный на дому фреймворк просто не может сравниться с этим.

  8. Широкое тестирование пользователей. Так как Struts используется в большом количестве веб-приложений, рамки будут рассмотрены многими другими глазами, чем все, что вы могли бы написать в одиночку. Обычно, но не всегда, это означает, что любые проблемы, которые у вас есть, будут замечены кем-то другим (и, надеюсь, разрешены) в первую очередь.

3

Большая база знаний. Я согласен, что это, возможно, не так корректно, как раньше, но Struts использовалось во многих проектах на протяжении многих лет. С точки зрения ремонтопригодности с использованием хорошо известной структуры, это облегчает для других людей работу над вашим приложением, а также помогает создать собственный резумас в будущем. В настоящее время большинство разработок находится либо в пространстве на основе компонентов (например, JSF, wicket, tapestry), либо в пространстве, подобном рельсам (например, rails, grails, lift), но функция struts arcitechture все еще используется и действительна.

Вы не сказали, если вы работаете в корпоративной среде или нет, для личного проекта, возможно, проблема ремонтопригодности не такая уж большая проблема.

Если вы решите, что стойки подходят вам хорошо, вы также можете взглянуть на stripes, основанную на стойках платформу, основанную на тех же концепциях, но менее подробно, когда речь заходит о конфигурации с более разумными значениями по умолчанию, меньше xml и поддержкой для аннотаций.

3

Я полностью согласен с вашими очками о Struts - лично я думаю, что его время пришло и ушло.

Я ушел с Struts в v1 (который, как я считаю, не похож на последние версии), потому что форма beans, где только что добавлен шаблонный код для записи.

С тех пор большинство приложений, над которыми я работал, используют Spring как основу для внедрения зависимостей, что сделало Spring MVC естественным выбором - это просто, прямолинейно и минимально.

1

Не только для Struts. Но некоторые моменты, которые следует учитывать при использовании каркаса:

  • Стенд.
  • Специализированные IDE или плагины для вашей любимой IDE.
  • Переносимость. Например, кто-то может разработать портлет для интеграции существующего приложения расположений на сервер портала.
  • Интернационализация.

Самое главное для меня:

  • Вы не должны беспокоиться о проблемах, о коде распорок, просто обновить.
  • Вы можете сфокусировать свою работу на бизнес-логике.
1

распорок Open Source-- Large Community ---- Количество книг, доступных ----- Проверенная FrameWork ---- Популярные рамки ----- Выпускается с 2001-- - + ---- функции, упомянутые выше ...........

, но когда ур использует распорки, лучшим выбором является распорка2.

1

Я думаю, что ваше чувство об удалении Struts - это звуковая и понятная реакция. Struts просто не подходит для приложения.

Смежные вопросы