0

我被分配了一项任务,将 Java 独立应用程序转换为 Python Web 应用程序。用 Python 语言重新编码整个模块需要花费大量时间和精力。因此有人建议我快速总结一下 Python 并让代码正常工作( jython.org)(Jython 是 JAVA 的 Python 包装).. 任何人都可以指导我如何开始,因为我是 Python 和 Jython 的新手?

4

1 回答 1

0

为了让你开始:

如果您熟悉 Java,那么您应该可以毫无问题地进入 Jython 提示符。像其他任何一样执行它.jar。如果您没有下载独立的 jython.jar,请确保在您的类路径中包含 Jython 库。

假设您的 Java 应用程序的包名为com.stackoverflow.q10715162,并编译为.jarin C:\jars\your_app.jar

然后,您可以在 Jython 中访问它的类。在 Jython 提示符处:

>>> import sys
>>> sys.path
['', 'C:\\jython\\Lib', 'C:\\jython\\jython.jar\\Lib', '__classpath__', 
'__pyclasspath__']

sys.path除了其他内容外,这里还有一个目录列表,您的 Jython 发行版在其中查找已编译模块。通过将您编译的 Java 应用程序添加到列表中,它将变得可访问(更深入的信息可在http://www.jython.org/jythonbook/en/1.0/ModulesPackages.html获得):

>>> sys.path.append('C:\\jars\\your_app.jar')
>>> import com.stackoverflow.q10715162 as yourapp
*sys-package-mgr*: processing new jar, 'C:\\jars\\your_app.jar'
>>> dir(yourapp)
['Class1', 'Class2', 'Class3', ...]

通过使用dir(yourapp),您可以看到您在 Java 应用程序中定义的类。dir(yourapp.Class1)将列出类中的所有方法、函数等。

您可能希望至少通读 Jython Book 的前几页以熟悉新语法。我发现它比 Java 简单得多。

对于制作 Jython Web 应用程序,我听说cgi这是迄今为止以最少开销开始的最快方式:

#!/usr/bin/python

print("Content-Type: text/plain\n\n")

print("Hello, World!\n")

本教程似乎很有帮助:http ://www.cs.virginia.edu/~lab2q/lesson_1/ 。虽然是针对 Python 的,但几乎所有的都应该适用于 Jython。

当然,如果cgi不适合您或您的项目,还有许多其他 Python/Jython Web 服务选项。我已经使用web2py并且非常喜欢它。

于 2012-05-24T21:58:30.587 回答