使用Spring roo over play框架的优势(如果我们使用Spring框架)?

18b*_*tes 11 spring spring-roo playframework

我最近偶然发现了Play框架,同时评估了在项目中使用的框架.我需要使用Java语言和JVM(因此grails不是一个选项).

从最初的印象Play框架看起来非常类似于Django(或Rails),但Spring Roo看起来很有趣,因为我使用Spring框架作为核心组件.

如果我已经使用了核心Spring框架(例如集成),那么使用Spring Roo有什么优势吗?

Spring Roo有任何已知的重大问题吗?(例如失去对代码生成的控制权)

Ser*_*eyB 11

这完全取决于您正在开发的应用程序类型.如果你想拥有一个带有几个控制器的简单应用程序,我相信Play是一个很好的候选者.但是,如果您正在编写一个大型企业应用程序并希望利用Spring提供的所有功能,那么Roo就是您的选择.Spring是事实上的企业Java框架,每个软件供应商都确保提供Spring集成,例如,它需要一行XML来启动SOAP Web服务:

<jaxws:endpoint implementor="org.apache.cxf.jaxws.service.Hello" address="http://localhost:8080/test" />
Run Code Online (Sandbox Code Playgroud)

想要连接到RabbitMQ

<rabbit:connection-factory id="connectionFactory"/>
<rabbit:template id="amqpTemplate" connection-factory="connectionFactory"/>
Run Code Online (Sandbox Code Playgroud)

但那只是核心Spring,Roo让事情变得更简单,想要添加一个数据库?在Roo的命令shell中键入一行.安全?还有一行.启动Cloud Foundry?还有一行.自动建议功能将告诉您所有可用的命令和每个所需的参数.Roo的最大优势(对于经验丰富的Spring开发人员)不需要学习任何新的框架,只需键入Roo命令并获得标准的Spring代码,然后您可以随意执行任何操作.如果您对普通Spring感觉更舒服,可以使用Roo来启动项目然后将其删除.我不是一个跳过最新技术带的人,对于"这会改善你的生活"这一点非常持怀疑态度.承诺,但Roo确实让开发变得更简单,更快捷.


Cod*_*nci 9

从我之前看到的,Roo和Play之间的一个很大区别是Roo为你创建了样板代码,然后你进行维护,而Play只是减少了你需要开发的代码量,因此减少了你的代码量需要维持.

如果你从零开始,我看不到Roo对Play的好处(作为Play倡导者的个人观点).然而,由于你已经来自Spring背景,那么Roo可能是一个更好的选择,因为你没有学习曲线(并且根据你正在考虑的Play版本,这可能是一个因素).


bie*_*ior 7

这是我的私人印象,所以它可能(非常)主观.我也是Play的倡导者.

我被强制Spring MVC试一试......这是某种%$%@ $%#...对我来说不舒服,不得不担心XML文件......

所以我发现Roo哪些脚手架应用程序非常好(特别是与Spring相比)我认为使用它是明智的,但是当你的项目正在增长时,需要花费太多精力来关注所有依赖的文件(我不知道) ,也许是错误的IDE,也许没有太多的耐心...)一周后我准备回到PHP,永远;)

最后我找到了Play,这对我来说很重要,我不需要再处理那些让我疯狂的XML"支持".常见的结构比Spring-*更清洁.我不需要关心配置或重新部署应用程序.从第一步开始,一切都有效.我唯一需要做的就是......发展!

所以,最后我认为你应该给Play一个机会,也许这比选择庆祝不舒服的习惯更好.也许.你必须选择自己.

顺便说一句:两者都是真正不同的方法,如果没有对同一主题的两种解决方案进行可靠的比较,你就无法正确判断它.

  • 我个人认为Roo和Play一样简单.以此为例:http://static.springsource.org/spring-roo/reference/html-single/#intro-first-steps (2认同)
  • _I被强制执行以试试Spring MVC ...这是某种%$%@ $%#....让我感到不舒服仍然担心XML文件...... _ - 你显然不是在说话关于现代Spring MVC,因为它可以配置0 xml,所有纯java,甚至不是web.xml (2认同)