将Rails应用程序迁移/重写到Java

将Rails应用程序迁移/重写到Java,java,ruby-on-rails,Java,Ruby On Rails,甚至没有试图在Rails/Ruby和Java之间挑起一场激烈的战争。 我不想讨论原因,但我想用Java重写/迁移我现有的rails应用程序 以下是我需要找到替代方案的事项: PostgreSQL。我可以使用任何数据库,但在Java中有一个功能强大的ORM,它与ActiveRecord相当 雷斯克。用于Rails应用程序中的后台处理。我需要在Java中找到类似的解决方案 MVC。虽然严格来说没有Rails MVC那么优雅,但在Java中任何接近它的东西都可以 对此有经验的看法吗 编辑:我想用Jav

甚至没有试图在Rails/Ruby和Java之间挑起一场激烈的战争。 我不想讨论原因,但我想用Java重写/迁移我现有的rails应用程序

以下是我需要找到替代方案的事项:

  • PostgreSQL。我可以使用任何数据库,但在Java中有一个功能强大的ORM,它与ActiveRecord相当
  • 雷斯克。用于Rails应用程序中的后台处理。我需要在Java中找到类似的解决方案
  • MVC。虽然严格来说没有Rails MVC那么优雅,但在Java中任何接近它的东西都可以
  • 对此有经验的看法吗


    编辑:我想用Java语言开发(这样就排除了Scala、Groovy、JRuby和类似的语言)

    ORM:Hibernate几乎是标准的。不过,任何实现JPA的方法都可以


    后台处理:通常由您的应用程序服务器(例如JBoss)提供。

    在切换到Ruby/RoR之前,我用Java开发web应用程序大约8年了。我推荐的一套标准库是:

  • 春季MVC
  • 冬眠甲虫
  • 也许石英是Sidekiq的等效物
  • SpringRoo将所有内容捆绑在一起,并引导其他内容
  • 我建议使用freemarker或velocity来替代JSP

  • 但是无论您选择什么,您都会后悔:)

    JavaLite堆栈是Java中最接近Rails的东西,它包括ActiveWeb(web部件-控制器、测试、动态编译、自定义标记等)。ActiveJDBC-ActiveRecord实现、用于迁移的DB Migrator:、HornetNest(基于JMS的命令模式取代Sidekiq)等等。现代Java Web开发的整个堆栈在一个包中


    签出:

    我打赌有人会建议。它也支持后台工作,并且基于MVC理念。你为什么要这样做,重点是什么?如果您只是想让现有的Rails应用程序在JVM上运行,请使用JRuby。如果您想要类似Java语言的Ruby环境,请使用Grails。如果您想将Rails应用程序完全重新实现为一个“标准”Java web应用程序,您可以做出多种选择(JSF、Spring等)——但是尝试“匹配”Rails的各个部分是没有意义的。@OstapAndrusiv谢谢,这似乎很有趣。>>Nate我以前从未用Java实现过web应用程序,所以我将从Rails中学到的知识作为我希望在Java编写的web应用程序中做什么的指南。