我来自 Enterprise Java 背景,涉及相当重量级的软件堆栈,并且最近发现了 Stripes 框架;我最初的印象是,这似乎很好地减少了用 Java 构建 Web 应用程序的不愉快部分。
有没有人将 Stripes 用于已经上线的项目?你能分享你在项目中的经验吗?另外,您是否考虑过任何其他技术?(如果有的话)您为什么选择 Stripes?
我来自 Enterprise Java 背景,涉及相当重量级的软件堆栈,并且最近发现了 Stripes 框架;我最初的印象是,这似乎很好地减少了用 Java 构建 Web 应用程序的不愉快部分。
有没有人将 Stripes 用于已经上线的项目?你能分享你在项目中的经验吗?另外,您是否考虑过任何其他技术?(如果有的话)您为什么选择 Stripes?
我们已经使用 Stripes 大约 4 年了。我们的堆栈是 Stripes/EJB3/JPA。
许多人使用 Stripes 和 Stripernate 作为单一的全栈解决方案。我们不这样做是因为我们希望我们的业务逻辑在 EJB 层中,所以我们只是依赖 JPA 实体作为组合模型和 DTO。
Stripes 将绑定到我们的实体/DTO,然后我们将它们推回 EJB 层进行工作。对于我们的大多数 CRUD 东西来说,这非常简单直接,使我们 80% 的用例易于使用。然而,对于总是出现复杂应用程序的边缘情况,我们可以灵活地做任何我们想做的事情。
我们有一个非常大的基础 Action Bean,它封装了我们的大部分 CRUD 操作,这些操作可以回调到特定于实体和表单的各个子类。
我们还有一个大型的内部标签文件库来管理我们的页面、安全性、导航、任务等。一个简单的 CRUD 编辑表单只不过是一个字段名称列表,我们可以获得所有的 chrome 和菜单以及访问控制“免费”。
这样做的好处是我们可以保留我们喜欢的基于 HTTP 请求的隐喻,并且我们可以选择系统的各个部分,而不是使用一个胖堆栈。Stripes 层简洁而刻薄,从不妨碍我们。
我们有一堆集成了 YUI 和 JQuery 的 Ajax,所有这些都可以轻松地处理我们的 Stripes 和 EJB 堆栈。
我还为示例项目将堆栈的轻量级版本移植到 GAE,基本上必须对我们的 EJB 层做一些小工作。因此,整个堆栈非常灵活且易于更改。Stripes 是其中的一个重要因素,因为我们让它做它所做的几件事,而且做得很好。然后将其余部分委托给堆栈的其他部分。
与往常一样,人们有时宁愿拥有不同的部分,但坦率地说,Stripes 将是我们堆栈中的最后一个部分。它可以更好地支持完整的 HTTP 动词集,但我宁愿修复 Stripes 以更好地做到这一点,而不是切换到其他东西。
我们现在在所有生产基地都使用条纹,并且已经使用了大约一年。与我们之前使用的 struts 相比,它是一个很棒的产品。事实上,实际上没有 XML 配置文件,而且您可以用最少的类和注释来设置它,这真是太棒了。
在缩放和速度方面,它实际上似乎比 struts 更好,我的猜测是因为涉及的层更少。您最终得到的代码也更加简洁,因为您不必去分离 XML 文件来找出重定向的去向。
我们将它与 EJB3 后端一起使用,这两者似乎可以很好地协同工作,因为您可以在 actionBean 对象中使用 EJB POJO,而无需像 struts 中那样的表单对象。
在我们的评估中,我们考虑了 struts 的 alpha 版本(支持注解)和许多其他框架,但 stripes 之所以获胜,是因为它具有出色的文档、稳定性和简洁性。
无法弄清楚如何发表评论:所以要回答您的第二个问题,我们还没有遇到我所知道的 Stripes 中的一个错误。这对于一个开源框架来说是相当令人印象深刻的。我还没有尝试过最新版本(1.5),但是 1.4.x 非常稳定。
我们在大约一周内将一个本土的 Web 框架转换为条带。我们目前正在生产中使用它,它是一个很棒的框架。社区非常有帮助,框架不会妨碍您。它可以在许多地方进行扩展,以根据您认为合适的方式改变行为。url 绑定功能也很棒。我们使用注释和拦截器实现了一个健壮的安全框架。我们使用 spring 进行依赖注入,并且 stripes 对此有很好的支持。
如果您要使用它,我肯定会使用新的 1.5 版本。
我是这个框架的忠实粉丝。我来自 struts 背景,这正是我正在寻找的框架。我们团队中的其他开发人员非常喜欢使用 Stripes 框架。
我刚从实用程序员的网站上购买了 stripes beta 书。这是关于 Stripes 1.5 的一个很好的资源。
我们现在已经在多个生产项目中使用了 Stripes,到目前为止体验非常好。设置时间很短,配置管理问题似乎更少。我们有使用 Stripes/Dojo/Hibernate 运行的 webapps 和其他混合使用 Stripes/Spring/JSP/Jquery 等的 webapps。将 Stripes 添加到我们现有的项目中非常简单,因为它们支持集成现有的 Spring 配置。将 Stripes 与 JSP 一起使用很有趣,尽管有时您确实觉得需要用 Java 编写代码而不必过多地使用 JSTL。
注意:这是一个老问题,但考虑到当您搜索 Stripes 用法时它会很快弹出,我正在添加一个回复。
我也是从 Struts 和 JSF 背景进入 Stripes 的。我从一个在新项目中主要使用 struts 和 JSF 的大型企业环境,到一个在 Stripes 中完成所有 J2EE 的小型环境。
似乎 Stripes 在 Web 框架中为您提供了您想要的东西,而不会妨碍您。正如其他人已经提到的那样,不需要太多配置。非常快速的开发,让您可以专注于演示等,而不是使用框架。
如果我必须开始一个全新的项目并且我有发言权,我会选择 Stripes 或 JSF。如果我不得不决定切换到 Stripes,我可能会被吓跑,因为它看起来/感觉像是一个 sourceforge 地下室项目,而不是一个企业级框架,但它似乎相当可靠。我们使用Stripernate来实现简单的 ORM。
然而,它让我想起了Fruit Stripe 口香糖,它的味道太快了。
Stripes 是昨天的技术,如果你可以选择像 GWT 这样更现代的东西。