Java的最佳Web应用程序框架?

时间:2008-11-03 01:22:03

标签: java model-view-controller web-frameworks

哪个是Java的最佳框架?我正在寻找类似于Symfony for php和Ruby-On-Rails for Ruby的东西?我甚至不知道Java是否存在这样的东西。

18 个答案:

答案 0 :(得分:15)

看一下Spring。我认为Ruby-On-Rails可以做任何事情(你也可以为ORM添加Hibernate)。

答案 1 :(得分:14)

java有许多出色的Web框架,但如果您正在寻找类似于Rails的内容,请查看Grails。它使用Groovy,它是动态语言,但使用Java VM。

查看他们的quick start以确定它是否是您想要的。

答案 2 :(得分:13)

我建议您查看playframework

为什么呢? this article很好地总结了它。

答案 3 :(得分:10)

我目前首选的Web应用程序框架是Play Framework。 http://www.playframework.org

我已经使用了许多列出的其他框架,比如Struts,Seam等,但是我从来没有使用像Play那样快速,高效的框架。它减少了开发所需的代码量(而不是像Roo那样构建样板代码),并且它消除了代码构建部署周期。编辑由Play自动完成,错误显示在浏览器中,从而获得非常成功的即时反馈。

如果不出意外,我建议您访问Play主页并查看截屏视频。它只有几分钟,但显示了框架的力量。

答案 4 :(得分:7)

答案 5 :(得分:5)

这取决于你想做什么,但简短的回答是:男孩,在那里!但请注意,答案并未表明无数选项是好还是坏。 Java的服务器端社区往往更加分散,虽然在实际的Ruby实践中使用的Rails没有那么多的替代品,但是Java端的每个阵营似乎都配备得相当好。 正如泰勒马歇尔所提到的那样,Struts是最常用于工业的(因为它是我所知道的最老的仍在使用的OSS MVC容器。但似乎没有人喜欢Struts。Ex-Jakarta菜单上的Apache Jakarta页面显示了他们已经孵化的许多Web应用程序框架,包括TapestryTurbineVelocity。还有Wicket(Wicket的一个非常不错的比较)和Tapestry一样here)。哦,还有Java Server Faces。而SpringMVC.Tapestry和Wicket(特别是)似乎正在取得进展,而每个人似乎都有一个关于JSF的恐怖故事。你的里程将会在这里绝对不同,而eesh,在这个答案中查看链接,也许Groovy会更简单。

答案 6 :(得分:3)

我不确定你是不是在讽刺,但如果你不是这里的Java Web框架的部分列表:

  1. Java Server Faces(官方Sun规范),各种实现可用
  2. Apache Struts
  3. Apache Shale
  4. Apache Tapestry
  5. Apache Wicket
  6. OpenSymphony WebWork
  7. Spring Framework MVC
  8. 只使用了其中的一些,我无法真正告诉你哪一个是最好的。 Spring MVC是我个人最喜欢的面向更多内容的网站,但如果它更像传统的Web应用程序(带有Web界面的应用程序),我会使用JSF。

    一般来说,Java开发人员之间的笑话不是如果某个应用程序有一个框架/库,而是要使用的几十个选项中的哪一个。

答案 7 :(得分:2)

As I outlined in a previous answer,我喜欢Spring MVC。

答案 8 :(得分:2)

Struts适用于西装。

答案 9 :(得分:1)

我同意其他建议grails的人 - 我现在在几个应用程序上使用它,这是我在轨道上找到的最接近java风味的ruby的东西。那说,为什么不使用JRuby?我的理解是他们现在正在运行Rails。

答案 10 :(得分:1)

我非常喜欢使用Grails,它广泛使用了Hibernate和Spring框架。它分离模型视图和控制器的方式很棒。GORM(Grails的对象关系映射(ORM)实现)非常棒, 有计划将其分成独立的产品。

使用Spring Acegi security plugin

非常容易

另外值得一看的是Searchable plugin,可以非常快速,轻松地实现全文搜索。

答案 11 :(得分:1)

亲自动手,Grails。

只需从Grails.org下载并开始处理示例和截屏视频。制作它的人刚刚被SpringSource收购,所以它肯定会去的地方!

答案 12 :(得分:1)

我刚开始使用Groovy / Grails,看起来很不错。什么是好的,你可以利用所有现有的Java技术。

答案 13 :(得分:1)

看看JRapid!定义您的应用程序模型,它为您的应用程序生成每个层,包括一个非常强大的UI。

答案 14 :(得分:0)

Tapestry看起来非常酷......在您付出巨大努力安装它之后。

答案 15 :(得分:0)

我读到了JBoss Seam,看起来也很不错

答案 16 :(得分:0)

如果您需要在JVM上运行,那么Grails非常棒。如果你想严格遵守Java(不是动态语言),我认为春天是你最好的选择。

答案 17 :(得分:0)

Apache WicketVaadin是我的最爱。 Vaadin更适用于RIA /应用程序风格的界面。