Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/grails/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JVM框架,哪一个?_Java_Grails_Jvm_Playframework_Web Frameworks - Fatal编程技术网

Java JVM框架,哪一个?

Java JVM框架,哪一个?,java,grails,jvm,playframework,web-frameworks,Java,Grails,Jvm,Playframework,Web Frameworks,我在框架或语言方面没有太多经验,所以我需要你的帮助 这是我到目前为止所做的,这样你就可以理解我的来历了 我使用Java/SpringMVC/Hibernate开发了一个web应用程序。在前端,我有一些jquery数据表对数据库进行ajax调用,另一个页面执行存储的prod,仅此而已 现在我对所有的配置、bean、hibernate映射、spring映射、apachetiles都感到厌倦了,列表还在继续 我曾经玩过Groovy/Grails,这看起来容易多了,但这意味着我需要学习Groovy,我听

我在框架或语言方面没有太多经验,所以我需要你的帮助

这是我到目前为止所做的,这样你就可以理解我的来历了

我使用Java/SpringMVC/Hibernate开发了一个web应用程序。在前端,我有一些jquery数据表对数据库进行ajax调用,另一个页面执行存储的prod,仅此而已

现在我对所有的配置、bean、hibernate映射、spring映射、apachetiles都感到厌倦了,列表还在继续

我曾经玩过Groovy/Grails,这看起来容易多了,但这意味着我需要学习Groovy,我听说了它的性能弱点

所以我遇到了Play框架,有人能告诉我,在上面的场景中,Play是否会让我的生活更轻松,或者我应该直接进入Groovy/Grails甚至scala/lift

我没有太多时间学习另一种语言,所以如果我能继续使用核心Java并使用Play,那就太好了

那么,我所描述的头痛是出现RoR/PythonDjango、grails等的原因吗?还是别的什么

谢谢

格伦。

玩吧

在Spring/Hibernate运行了6到7年之后,我对JSP/EJB做了更多的工作,我开始在Java世界中寻找其他替代品,如Scala、Node.js、Rails等。Play Framework让我再次爱上Java,尽管我推荐Scala

我在我的博客和博客上有很多关于游戏的信息


这是超级容易拿起,它的疯狂生产,你会有很多乐趣

如果你问一个玩框架的人,他会告诉你使用Play。如果你问一个Scala/Lift的人,他会告诉你使用Scala/Lift

理想情况下,您希望找到使用过Groovy/Grails、Scala/Lift和Play的人,但不幸的是,这些人并不多

FWIW,我使用Groovy和Grails,并且非常喜欢它。如果您已经了解Java、Spring和Hibernate,那么您就已经了解了Groovy/Grails所需的大部分内容

如果你不想花很多时间学习一门新语言,我会远离Scala,因为它与Java非常不同,而Groovy几乎是Java的超集,语法也很熟悉


我对Play几乎一无所知,但我会关心社区的规模——检查stackoverflow上Play和Grails问题的数量,以进行粗略的比较。

我可以从一个10年的J2EE开发人员的角度告诉你,他从JSP/servlet到Grails进行了游戏。6年前我发现了groovy,我非常喜欢它,我一直在我的其他项目中使用groovy及其GSP模板来生成代码。我真的很喜欢groovy语法。因为您可以在一行代码中完成很多工作;)因为groovy,我尝试了Grails。但是,除了在大约20%的项目时间内使用该语言编写代码外,您还有80%的时间在处理Grails约定。他们如何将这个和那个映射到持久层(表面下的JPA)。所以你大部分时间都在浏览文档

然后我找到了游戏。感觉很自然。一切都很快。一切都是直接的,80%是不受干扰的、高效的编码,只有20%是读取文档。任何javaide的代码完成实际上都是足够的支持。在Grails中,您要么需要GrailsIDE,要么经常浏览文档

对我来说,最大的吸引因素是热代码交换特性,它几乎完全消除了构建阶段。Play的类增强功能为您提供足够的舒适度,让您能够克服Grails中动态查找器的损失。与此同时,我甚至写了我自己的增强剂来获得更多的安慰

在实际项目中,强类型Java语言对所有开发人员都是一个巨大的好处。您不能像使用groovy那样轻松地破坏它

此外,如果您查看Play包,您总是会得到合理的默认值。所有开发人员都喜欢的东西。基于jQuery的CRUD,漂亮的代码示例,良好的视觉体验。这一切都尽可能的简约。这意味着,您可以随时转到play框架源代码本身,阅读代码以了解play的行为


总而言之,在经历了10年的Java和J2EE挫折之后,我几乎放弃了Java,转而使用Play实现的Java,因为在Play中它非常有趣,我现在再次热爱它。我向另外两位开发者朋友推荐play,他们也很喜欢。它感觉像是Java,它本来应该放在首位。快速、干净、安全&非常有趣。我永远不会使用基于Java的其他东西,即使是简单的main();)Pr> GRAIUS 2的性能将与静态类型语言非常接近。p> 基于您当前的体系结构,Grails将是最合适的——您可以毫无问题地重用所有现有的类和代码,并直接使用它。您可以自由地使用@Autowired和其他Spring注释、java代码,Grails会选择它——因为Grails是隐藏的Spring。唯一需要稍作调整的部分是JSP,但我能够让现有JSP和自定义标记库正常工作。Grails使用SiteMesh来构建它的Groovy服务器页面(想想JSP Groovy,去掉了一些JSP限制)

没有任何东西反对Play、Lift、Clojure的web框架、SEAM或其他任何框架——但是如果您想从现有的框架简单地过渡到更高效的框架,那么Grails将是最合适的

当然,现在这些框架中几乎每一个都支持多语言编程——您可以使用Scala进行编程,Groovy进行编程,Java进行编程——编译器、构建环境和工具都在解决多语言编程的问题

长话短说,归根结底是需求和风险管理——您是否需要函数式编程、动态t