6

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

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

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

我应该利用哪种 Java 动态/脚本语言满足以下标准:

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

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

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

谢谢!

4

3 回答 3

2

我投票给 Jython 是因为它可以与现有的 Java 代码进行交互,并且拥有强大的支持基础。更不用说它易于学习和使用的 Python。Eclipse 对语法高亮、调试和自动完成有很好的支持。最后安装非常简单,因为它是一个独立的文件夹(没有真正的“安装”)。

我承认有偏见,因为我使用您提到的其他工具比我使用 Jython 的次数少得多,但我不需要这样做,因为 Jython 非常适合需求。

于 2010-12-11T04:42:14.367 回答
2

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

当然,Beanshell 和 Javascript(以 Rhino 的形式)也足够了,尽管我想说它们的语法都不太具有表现力。

从当前的使用趋势来看,我会说 Jython 和 JRuby 可能是相对于其他两个具有最普遍支持/寿命的两个。

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

于 2010-12-11T04:42:55.617 回答
0

我应该说,与 Jython 和 BeanShell 相比,几个基准测试表明 Groovy 在速度上胜出。该测试是使用 DMelt ( http://jwork.org/dmelt ) 框架执行的,您可以在其中从一种语言跳转到另一种语言,调用相同的 Java 库。

于 2015-11-13T00:57:07.060 回答