9

Appfuse vs. Roo,你会用什么,为什么?

每个人的甜蜜点是什么。

4

12 回答 12

18

根据我在这个问题上给TheServerSide 线程的答案......:

AppFuse 旨在为您的新项目提供一个单一的初始脚手架。这类似于 Maven 原型或 Eclipse 的“新项目”功能,您在新项目开始时运行它们一次,然后您继续维护脚手架代码。一旦你运行了脚手架系统,它就不再参与你的项目。

另一方面,Roo 为您在给定项目中的长期使用提供了一个双向感知活动代码生成器。因此,Roo 在初始创建时以及在您修改项目时提供价值。

实际上,这意味着随着您的项目的发展,Roo 将自动维护某些文件。举个简单的例子,当您添加(或删除)一个字段时,Roo 会自动为您更新 toString、getter/setter、JSP 页面等。它还提供命令,以便您以后可以添加新功能。因此,如果您需要在创建项目六个月后添加安全性,您只需“安全设置”。或者,如果您需要发送电子邮件,您只需“ http://static.springsource.org/spring-roo/reference/html/command-index.html#command-index-email-sender-setup”。对于许多其他能力领域也有类似的命令,例如 Spring Web Flow、JUnit、Selenium、常见的 JPA 提供程序等。您可以随意推迟决定,而 Roo 只会在您添加这些功能时添加这些功能请求它们(它还会自动在您的项目中使用这些新功能)。

还有许多其他差异。Roo 允许通过用户开发的附加组件进行扩展,它提供了一个高度可用的 shell,它允许您增量构建一个新项目并仅在需要时添加功能,它广泛支持主要 Spring 技术的最新版本,它带有一个SpringSource 开发(并因此得到认可)的应用程序架构等。

阅读 Roo 参考指南的介绍章节或简单地完成十分钟的测试项目将说明它们在方法上非常不同。

于 2010-01-08T20:56:39.110 回答
6

我在 AppFuse 和 Roo 上的笔记:

AppFuse

是一个完全工作的模板应用程序/项目。

  • 传统 DAO <-> 服务 <-> 控制器架构

  • 易于开始使用 Maven 原型

  • 很棒的文档和教程

  • 不是最新的。Spring 3 final 即将发布,AppFuse 基于 2.5 (?)

春天的房间

另一方面,Spring Roo 是一种通过使用代码生成来加速开发的工具。

  • 开始使用完全配置的新项目需要 1 分钟

  • 创建丰富的域对象,其中使用 AOP 而不是传统的 DAO/服务将 CRUD 编织到域对象中

  • 如果您是 Spring 新手,很难掌握

  • 文档还不是很好

  • 真的很酷!即只需一行代码就可以将 Spring Security 添加到您的项目中!

于 2009-11-20T16:18:13.757 回答
5

Telosys(轻量级代码生成器)也是一个不错的选择。见 http://www.telosys.org/

它产生非常干净的代码(没有像 ApectJ 那样的依从性)并且模板是可定制的

有一堆模板旨在生成 Spring MVC Web 应用程序(以及许多其他模板,用于为其他类型的框架生成代码)。

于 2014-04-10T08:53:09.180 回答
1

对我来说 Appfuse 但它不是最新的,但是 spring roo 使用 aspectj 并且有部分代码你不应该接触,我不喜欢那样。

于 2010-12-07T11:21:08.863 回答
1

春天的房间

优点。1.

  1. 可定制:您可以根据需要添加和删除不同的框架和插件。

  2. 数据库逆向工程: 如果您已准备好数据库模式,请创建 CRUD 应用程序。

  3. 强大的 Spring 社区支持。

  4. NOSQL MongoDB 支持

  5. 可以创建所需的附加组件。

    缺点:

  6. 需要深入了解面向方面和 Spring 堆栈。

  7. 与 appfuse 相比,需要更多时间来学习 spring roo。

应用程序:

优点:


  1. 使用struts、JSF 和 Spring启动中小型企业应用程序的好工具
  2. 完整的开源代码。
  3. 足够的文档。
  4. Twitter-bootstrap 准备好了。

缺点:自定义应用程序,但不像 Spring roo。

于 2013-03-13T11:00:04.213 回答
0

对于初学者来说,roo 看起来更像是过度设计,具有代码生成、面向方面编程的使用等等。

于 2009-10-09T07:28:33.900 回答
0

Appfuse 似乎不再维护,似乎最后一个版本是在 2008 年 5 月发布的。

Roo 它现在有点前沿,因为使用了尚未发布的 Spring Framework 第 3 版,但这将会改变,并且该版本带来了很多有趣的变化。

它还向您推销更多 Spring 技术组合,例如 STS 和 tcServer,并使使用 Spring Security 和 Spring WebFlow 变得非常容易。

于 2009-11-17T20:11:45.787 回答
0

我和ROO一起去。

我已经在使用

  • 春天
  • Spring ORM/JDBC
  • 春季MVC
  • 春季远程
  • STS(工具套件)

所以我的首选是 SpringSource 产品,因为一旦我扩展/实现了安全框架的代码,我已经熟悉 SpringSource 的 API 样式、文档、约定,甚至它们的编码实践...... ;-)

所以,我的建议是使用对你来说更自然的工具/框架。

干杯,

于 2010-01-12T09:48:12.053 回答
0

AppFuse -> 改为 SpringFuse 我更喜欢使用 SpringFuse

于 2013-01-08T06:00:13.103 回答
0

这个问题已经有好几年了,同时我想指出一些新的生产力工具:

吉纳吉。Generjee 是一个完整的在线工具。您在线定义您的要求和(可选)数据模型。然后您可以下载生成的代码。

生成的代码独立于generjee。该工具对于从集成的全栈代码库开始开发项目很有用。

generjee 将为您生成:

  • 根据您的数据模型的 JPA 代码
  • 用于创建、读取、编辑、过滤、排序和导出数据的 JSF 代码
  • 用户管理、注册和登录
  • 您定义的用户角色和此角色的特定访问权限
  • I18N 支持
  • 文件上传支持

锻造。用一句话来形容,就是“像Roo”。但是基于 Spring 和 AspectJ 的 Forge 不如 Roo 强大。

于 2015-09-11T15:20:33.187 回答
-1

AppFuse 与 Tapestry、Wicket 和其他 Roo 还没有的 Web 框架集成

于 2010-08-23T19:46:17.840 回答
-1

AppFuse 项目于 2016 年 4 月关闭。其创始人 Matt Raible 建议使用JHipster作为替代方案。

于 2018-04-04T01:26:46.633 回答