appfuse vs roo - 你会用什么?

时间:2009-10-08 07:56:21

标签: java java-ee code-generation spring-roo appfuse

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

每个人的甜蜜点是什么。

12 个答案:

答案 0 :(得分:18)

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

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

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

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

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

阅读Roo参考指南Introduction Chapter或简单地完成ten minute test项目将说明它们在方法上有很大不同。

答案 1 :(得分:6)

关于AppFuse和Roo的笔记:

<强> AppFuse的

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

  • 传统DAO&lt; - &gt;服务&lt; - &gt;控制器架构

  • 轻松开始使用maven原型

  • 精彩的文档和教程

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

Spring Roo

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

  • 新的完全配置项目入门需要1分钟

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

  • 如果您不熟悉Spring

  • ,很难掌握
  • 文档不太好尚未

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

答案 2 :(得分:5)

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

它产生非常干净的代码(不像ApectJ那样坚持) 并且模板可自定义

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

答案 3 :(得分:1)

对我而言Appfuse但它不是最新版本,但使用aspectj的春天roo并且有一部分代码你不应该触摸,我不喜欢它。

答案 4 :(得分:1)

Spring Roo

赞成。        1.

  1. 可自定义:根据您的要求添加和删除不同的框架和插件。

  2. 数据库反向工程:如果已准备好数据库架构,则创建CRUD应用程序。

  3. 强大的春天社区支持。

  4. NOSQL MongoDB支持

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

    缺点:

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

  7. 与appfuse相比,需要更多时间学习spring roo。
  8. 的AppFuse:

    优点:

    1. 用中文启动中小企业应用程序的好处 struts,JSF和Spring
    2. 完整的开源代码。
    3. 足够的文档。
    4. Twitter-bootstrap ready。
    5. 缺点:  自定义应用程序,但不像Spring roo。

答案 5 :(得分:0)

对于初学者来说,roo看起来更加精心设计,代码生成,面向方面编程的使用等等。

答案 6 :(得分:0)

似乎不再保留Appfuse似乎最后一个版本于2008年5月发布。

由于使用了尚未发布的Spring Framework版本3,它现在有点前沿,但是这将会改变,并且该版本为表格带来了许多有趣的变化。

它还为更多的Spring技术组合(例如STS和tcServer)提供了大量资金,并使Spring Security和Spring WebFlow变得简单易用。

答案 7 :(得分:0)

我要去ROO。

我已经在使用

  • 春天
  • Spring ORM / JDBC
  • Spring MVC
  • Spring Remoting
  • STS(工具套件)

所以我的偏好是SpringSource产品,因为我已经熟悉了SpringSource的API样式,文档,约定,甚至在我扩展/实现安全框架的代码后他们的编码实践......; - )

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

干杯,

答案 8 :(得分:0)

AppFuse - &gt;改为SpringFuse 我更喜欢使用SpringFuse

答案 9 :(得分:0)

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

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

生成的代码独立于generjee。该工具对于从集成的完整堆栈代码库启动开发项目非常有用。

generjee将为您生成:

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

Forge。用某些词来形容它,就像Roo&#34;一样。但Forge并不像Spring和AspectJ那样强大,就像Roo一样。

答案 10 :(得分:-1)

AppFuse与Tapestry,Wicket和Roo没有的其他Web框架集成 - 但

答案 11 :(得分:-1)

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