java - 对于这个小任务,我应该使用 Jython、JRuby、Beanshell、Groovy、Rhino 还是什么?

标签 java perl programming-languages jython beanshell

我有一些支持小型企业网站的批处理数据操作脚本。

这些脚本是 Perl、Java 和存储过程的“鼠窝”,它们按计划运行以根据各种来源和算法更新数据。

我想摆脱 Perl,这样我至少可以通过将整个过程从头到尾包含在 JVM 管理的数据库连接中来利用事务管理。

我应该利用满足以下条件的各种 Java 动态/脚本语言中的哪一种:

  • 通过提供类似的表达能力、I/O、正则表达式等,直接迁移 Perl 代码。
  • 良好的 IDE 支持,包括最好在 Eclipse 中完成代码和调试
  • 易于安装。最好将整个脚本引擎放在一个 jar 文件中。
  • 不是孤儿技术。我想选择 5 年后仍然存在的东西。
  • 当然 - 与我已有的其余 Java 代码完全集成。

我希望我的标准足够明确,不会被标记为主观问题。

对我来说,这绝对是一个编程问题。我将所有这些语言视为“有用的 Java 库”。

谢谢!

最佳答案

公平地说,Jython、JRuby、Groovy 都是不错的选择。它们都有不错的 IDE 支持,并且语法与 Perl 一样富有表现力,而且更简洁。 (Python 和 Ruby 在他们的概念上都欠 Perl 的债,所以从 Perl 移植并不是太头疼)

当然,Beanshell 和 Javascript(以 Rhino 的形式)也足够了,尽管我认为它们的语法表达能力较差。

根据当前的使用趋势判断,我认为 Jython 和 JRuby 可能是相对于其他两个具有最普遍支持/生命周期的两个。

真正的选择取决于您对这些语言中每一种的水平,但在所有这些语言中,我建议您使用 Jython,但如果您更喜欢 Ruby,则使用 JRuby。

关于java - 对于这个小任务,我应该使用 Jython、JRuby、Beanshell、Groovy、Rhino 还是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4415216/

相关文章:

java - 数组未完整打印

ruby - 另一个与 "diff.*\n.*\n.*\n.*\n.*\n "相同的正则表达式

perl - 将标量变量保存到数据库(sqlite3)时遇到问题?

language-agnostic - 将0转换为1,反之亦然

c# - 我应该学习什么编程语言?

programming-languages - 学习新语言还是继续使用Java?

Java.lang.RuntimeException :setParameters failed at android. hardware.camera.native_setParameter( native 方法)

java - .M3U8 谷歌电视上的视频流

java - 如何将这些整数传递给下面的方法?

Perl:读取文件时跳过第 N 行