Я исхожу из фона Enterprise Java, который включает в себя довольно тяжелый программный стек, и недавно обнаружил Полосы рамки; мое первоначальное впечатление таково, что это, кажется, помогает свести к минимуму неприятные части создания веб-приложения на Java.
Кто-нибудь использовал Stripes для уже запущенного проекта? А вы можете поделиться своим опытом работы с проектом? Кроме того, рассматривали ли вы какие-либо другие технологии и (если да) почему выбрали Stripes?




Мы преобразовали самодельный веб-фреймворк в полосы примерно за неделю. В настоящее время мы используем его в производстве, и это отличный фреймворк. Сообщество очень полезно, и фреймворк вам не мешает. Его можно расширить во многих местах, чтобы изменить поведение по своему усмотрению. Функция привязки URL-адресов также прекрасна. Мы реализовали надежную структуру безопасности с использованием аннотаций и перехватчиков. Мы используем пружину для внедрения зависимостей, и у полосок есть отличная поддержка для этого.
Я бы определенно использовал новую версию 1.5, если вы собираетесь ее использовать.
Я большой поклонник фреймворка. Я был специалистом по стойкам, и это именно тот фреймворк, который я искал. Другим разработчикам в нашей команде очень нравится использовать фреймворк stripes.
Я только что купил книгу о полосках на сайте прагматичного программиста. Это отличный ресурс по Stripes 1.5.
Наше приложение представляет данные из множества различных систем. Это объединяет эти данные в одно место. Наш материал типа CRUD был в основном в административной части сайта. Мы используем javascript-фреймворк yui для разметки и прочего ajax. Это довольно большое приложение, хотя около 38000 LOC.
Спасибо за Ваш ответ. Очень обнадеживает ... Я потратил некоторое время на изучение PHP в дополнение к моим существующим навыкам J2EE, но Stripes может заманить меня обратно.
Сейчас мы используем полосы на всех наших производственных площадках, уже около года. Это отличный продукт по сравнению со стойками, которые мы использовали до этого. Просто факт, что здесь буквально нет файлов конфигурации XML и что вы можете настроить все это с минимальным количеством классов и аннотаций, потрясающе.
С точки зрения масштабирования и скорости это на самом деле кажется лучше, чем стойки, и я предполагаю, что это связано с тем, что задействовано меньше слоев. Код, который вы получаете, также намного чище, потому что вам не нужно переходить к отдельным XML-файлам, чтобы узнать, куда идут перенаправления.
Мы используем его с бэкэндом EJB3, и они, кажется, очень хорошо работают вместе, потому что вы можете использовать свой EJB POJO внутри своего объекта actionBean, не нуждаясь в объекте формы, как в struts.
В нашей оценке мы рассматривали альфа-версию struts (поддерживающую аннотации) и множество других фреймворков, но Stripes победили благодаря превосходной документации, стабильности и чистоте.
Не могу понять, как оставить комментарий: поэтому, чтобы ответить на ваш второй вопрос, мы не обнаружили ни одной ошибки в Stripes, о которой я знаю. Это довольно впечатляюще для фреймворка с открытым исходным кодом. Я еще не пробовал последнюю версию (1.5), но 1.4.x очень стабилен.
Спасибо за Ваш ответ. Насколько надежной была основная кодовая база (т. Е. Сталкивались ли вы с какими-либо дефектами)?
Теперь, когда этому ответу почти 2 года, мне было бы ОЧЕНЬ интересно узнать, каковы ваши проекты полос.
rustyshelf, @digitaljoel Как насчет еще 6 лет спустя?
Я также перешел из фона Struts и JSF в Stripes. Я перешел от большой корпоративной среды, которая в основном использовала struts и JSF в новых проектах, к меньшей среде, в которой весь свой J2EE выполнялся в Stripes.
Похоже, Stripes дает вам то, что вы хотите в веб-платформе, не мешая при этом слишком сильно. Как уже упоминалось, не требуется особой настройки. Очень быстрая разработка и позволяет вам сосредоточиться на презентации и т. д. Вместо того, чтобы возиться с фреймворком.
Если бы мне пришлось начать новый новый проект и я бы сказал свое слово, я бы выбрал Stripes или JSF. Я мог бы испугаться Stripes, если бы мне пришлось принять решение переключиться на него, потому что он выглядит / ощущается как проект подвала sourceforge, а не фреймворк корпоративного уровня, но кажется довольно прочным. Мы используем Полосатый для удобного ORM.
Однако это напоминает мне Жевательная резинка Fruit Stripe, который потерял свой вкус СЛИШКОМ БЫСТРО.
Мы уже использовали Stripes в нескольких производственных проектах, и до сих пор мы получили отличный опыт. Время установки невелико, и кажется, что проблем с управлением конфигурацией меньше. У нас есть веб-приложения, работающие с Stripes / Dojo / Hibernate и другие со смесью Stripes / Spring / JSP / Jquery и т. д. Добавление Stripes в наши существующие проекты было довольно простым благодаря их поддержке интеграции существующих конфигураций Spring. Использование Stripes с JSP - это весело, хотя иногда вы чувствуете необходимость писать код на Java и не должны так часто использовать JSTL.
Примечание: Это старый вопрос, но, учитывая, что он появляется довольно быстро при поиске использования Stripes, я добавляю на него ответ.
Stripes - это вчерашняя технология, если вы можете выбрать что-то более современное, например GWT.
Это все равно, что сказать, что HTML - это вчерашняя технология, и вы должны использовать только Javascript, поскольку он современный. Поскольку Stripes - это основанная на действиях структура для создания HTML-страниц, а GWT - это компилятор Java в Javascript для создания приложений RIA (хорошо для того, чтобы Google никогда не находил ваш веб-сайт!)
На плакате не упоминалось, что поисковая оптимизация вызывала беспокойство, поэтому использование чистого JS-приложения или некоторой смеси не является проблемой. Большинство бизнес-приложений, которые выполняют грубую работу и тому подобное, не обязательно должны быть доступны для поиска.
@Kdeveloper Мы не обсуждаем HTML. Stripes и HTML - это очень разные звери, вам не нужно выбирать Stripes для создания HTML, на самом деле ужас, вы можете выбрать многие другие технологии. Я просто говорю: выберите современное и лучше не принимайте старое и скучное. Сегодня у нас есть компьютеры, и только дурак воспользуется стамеской и камнем.
Мы используем Stripes уже около 4 лет. Наш стек - Stripes / EJB3 / JPA.
Многие используют Stripes плюс Stripernate как единое решение с полным стеком. Мы этого не делаем, потому что хотим, чтобы наша бизнес-логика находилась на уровне EJB, поэтому мы просто полагаемся на объекты JPA как на объединенные Модель и DTO.
Stripes выполняет привязку к нашим Entities / DTO, и мы отправляем их обратно на уровень EJB для работы. Для большинства наших CRUD-материалов это очень простая вещь, что делает наш 80% -ный вариант использования тривиальным для работы. Тем не менее, мы можем делать все, что захотим, в крайних случаях, когда всегда возникают сложные приложения.
У нас есть очень большой базовый компонент Action Bean, который инкапсулирует основную часть наших операций CRUD, которые выполняют обратные вызовы в отдельные подклассы, специфичные для сущностей и форм.
У нас также есть большая внутренняя библиотека файлов тегов для управления нашими страницами, безопасностью, навигацией, задачами и т. д. Простая форма редактирования CRUD - это немного больше, чем список имен полей, и мы получаем весь хром, меню и элементы управления доступом " бесплатно".
Прелесть этого заключается в том, что мы можем сохранить метафору, основанную на HTTP-запросах, которая нам нравится, и мы можем выбирать отдельные части системы, а не использовать один толстый стек. Слой Stripes скудный и скупой, и никогда не мешает нам.
У нас есть несколько Ajax, интегрирующих YUI и JQuery, и все они безболезненно работают против стека Stripes и EJB.
Я также портировал более легкую версию стека в GAE для примера проекта, в основном выполняя незначительную работу на уровне EJB. Таким образом, весь стек очень шустрый и легко меняется. Полосы являются важным фактором, поскольку мы позволяем ему делать то немногое, что он делает, и делает это очень хорошо. Затем делегируйте остальное другим частям стека.
Как всегда, есть части, которые люди иногда предпочли бы использовать по-другому, но, честно говоря, Stripes будет последней частью нашего стека. Было бы лучше поддерживать полный набор HTTP-глаголов, но я бы предпочел исправить Stripes, чтобы это было лучше, чем переключаться на что-то еще.
Обновлено, чтобы сделать этот ответ предпочтительным, поскольку он более актуален, чем другие.
Насколько большое приложение вы переместили? Это был в основном типичный CRUD или у вас был сложный Javascript?