我被分配了一个将java独立应用程序转换为python Web应用程序的任务。用python语言重新编码整个模块需要大量的时间和精力。因此,有人建议我快速总结python并使代码正常工作(jython.org)(Jython是JAVA的Python包装)。谁能指导我如何开始,因为我是Python和Jython的新手?
要帮助您入门:
如果你熟悉Java,那么你应该能够毫无问题地进入Jython提示。只需像任何其他.jar
一样执行它.如果您没有下载独立的 jython.jar,请确保在类路径中包含 Jython 库。
假设您的 Java 应用程序的包名为 com.stackoverflow.q10715162
,并在 C:jarsyour_app.jar
中编译为.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书的前几页,以熟悉新语法。我发现它比Java简单得多。
对于制作 Jython Web 应用程序,我听说cgi
迄今为止以最少的开销开始的快速方法:
#!/usr/bin/python
print("Content-Type: text/plainnn")
print("Hello, World!n")
本教程似乎很有帮助:http://www.cs.virginia.edu/~lab2q/lesson_1/。虽然它是针对Python的,但几乎所有的都应该适用于Jython。
当然,还有许多其他 Python/Jython Web 服务选项cgi
如果它们不适合您或您的项目。我用过web2py
,真的很喜欢它。