如果这是一个愚蠢的问题,请原谅我。我对构建Web服务和完成Web应用程序完全陌生。 我想为基于Java的Web应用程序开发特定的功能。但是,使用Python开发这个功能更简单。那么是否有可能如果我用Python开发这个Web服务并将其用于基于Java的Web应用程序?Python Web服务的Java应用程序?
回答
我认为这是可能的。假设您的webservice方法返回一个json字符串。您可以使用此字符串,转换为Java中的HashMap并使用这些数据。
我个人比较喜欢cherrypy,为了方便创建web服务。它也有一个内置的服务器。
您可以使用FlexJSON将json字符串转换为HashMap。反序列化方法将有助于这样做。这是我做到的。
public Map<String, Object> JsonToMap(String data) {
Map<String, Object> dataMap;
dataMap = new JSONDeserializer<Map>().deserialize(data);
return dataMap;
}
这里,String data是你的python webservice方法应该返回的json字符串。
在框架中开发时,使用框架语言进行开发通常比用不同语言开发更简单。
Servlets是Web服务器(也称为Servlet容器)的组件。 Servlet容器和所需的Servlet API都是Java。虽然你可以在某些Python代码中使用Frankenstein,但通过集成努力最终可以使“简单”远远超出您特别期望的复杂程度,这是不错的。
如果您想要一个Python Web应用程序,请使用Python Web框架。如果您需要Java Web应用程序,请使用Java框架。不要试图让两个交叉点兼容,因为集成点(以及使用/提供的便利)甚至不能保证出现在围栏的“另一侧”。
这取决于你的意思。你的意思是在应用程序中使用该服务作为库吗?如果是这样,你可能想看看Jython并将其制作成插件。
但是,如果您希望将服务作为单独的应用程序运行,那么请使用Web界面从Java调用它,这应该不成问题。从理论上讲,Web服务的最终用户(在这种情况下,用户是你的应用程序)不应该担心服务的写入语言;只要标准保持为(JSON,XML等),大多数语言都能够一起工作。
有很多用于java的web框架,有些比其他框架更好。对于相当全面的参考,请考虑咨询http://en.wikipedia.org/wiki/Comparison_of_web_application_frameworks#Java。
Python的确是一种相当直观的语言,而且由于它经常用作服务器端脚本语言,因此出现了许多令人尊敬的web框架(如webpy和django)。
这取决于您试图执行的任务。如果你的项目需要一个java小应用程序,你可以将它嵌入到你使用python框架动态编写的网页中。但是,如果您正在寻找java和python之间的互操作性,您将希望阅读更多关于Jython(及其限制)的内容,正如lacqui所建议的。个人来说,我是一个快速,轻量级,实用和简单的web开发和模板的cherrypy webpy的粉丝,但是,如果速度是一个主要问题,您可能希望在采用动态类型的解释型语言之前考虑这一点。 Python 3的平均为比Java 6在JVM(http://shootout.alioth.debian.org/u32q/benchmark.php?test=all & LANG = python3 & LANG2 = JAVA)
慢约50倍有关Java与Python的比较的更多信息,请参见http://pythonconquerstheuniverse.wordpress.com/category/java-and-python/。
- 1. 的Java EE Web应用程序VS Web服务
- 2. Web服务与Web应用程序
- 3. Web服务,Web应用程序
- 4. 将Web应用程序(Java/JSP)移动到Web服务器
- 5. 分离的Web服务器和应用程序服务器?
- 6. Java与C++:使用Web服务的应用程序的性能
- 7. 有服务的asp.net web应用程序
- 8. MVC应用程序中的Web服务
- 9. Windows服务中的Web应用程序
- 10. AWS的微服务Web应用程序
- 11. 在远程服务器上使用nginx服务web应用程序和python
- 12. 使用Web服务的Java或.NET应用程序示例?
- 13. 用于测试服务器的Java Web应用程序
- 14. 编程等待Web服务响应的Web应用程序
- 15. Java和Python的应用程序/服务与Web界面的通信
- 16. 应用程序调用Web服务
- 17. Web应用程序,WCF服务和Sharepoint Web服务
- 18. ASP.NET Web服务应用程序vs ASP.NET Web服务
- 19. Python自包含的Web应用程序和服务器?
- 20. Java应用程序中的简单Web服务
- 21. Phusion旅客服务器中的Java Web应用程序
- 22. 现有应用程序中的Java Web服务集成
- 23. 什么Web /应用程序服务器用于Python
- 24. 应用程序崩溃时,Web服务
- 25. C#Web服务与Windows应用程序
- 26. Flex应用程序不打Web服务
- 27. Web服务客户端应用程序
- 28. Android应用程序web服务黑客
- 29. 在C#应用程序中使用Java Web服务
- 30. java web应用程序和web服务之间的线程间通信
是的。这是可能的。但它可能很复杂,困难,昂贵或有风险。你有什么更具体的问题吗? – 2011-04-01 15:03:46
是的,如果您编写Web服务权限,则任何语言都应该能够使用它。 SOAP可以成为你的朋友 – user489041 2011-04-01 15:34:00