我习惯用Java开发Web应用程序(Struts,Spring,JSP ......)。但现在我想开发一个桌面版。我从不喜欢用Java设计窗口(AWT,Swing,SWT):对于丑陋的界面来说太多了。所以我认为如果可以利用我的网络应用程序技能可能是一个好主意。一种选择是修改SWT浏览器并调用Java函数而不是HTTP请求。一个非常好的附加组件将是JSP的使用。最后,我认为可能有一些框架或工具。

你认为我的建议是个好主意吗? 可以使用一些框架吗?

我需要这个用于轻型应用。所以我认为嵌入一个Tomcat服务器并将其与HTTP请求一起使用并不是一个好主意。

感谢您的帮助。

编辑:一个示例应用程序可能是文件夹比较器:您指定了两个文件夹,应用程序显示文件夹和文件不同。在这种情况下,我认为打开外部浏览器很难看。膨胀的应用程序(使用其服务器,MVC等)不是最佳选择。

有帮助吗?

解决方案

我不打算嵌入Web服务器。我之前使用嵌入 Jetty 的网络启动应用程序完成了这项工作。

下载非常快,服务器启动,您可以使用 BrowserLauncher 立即启动浏览器到嵌入式服务器,从而你的应用程序。 Jetty采用模块化设计,占地面积小,因此您可以将其切割成必需品。

其他提示

如果您使用过JavaScript库 - ExtJs - 那么您可以将它与Adobe AIR一起使用来构建外观漂亮的基于桌面的Web应用程序。

使用flex builder ide在Adobe AIR中构建应用程序也很简单。

如果您选择嵌入轻型服务器,请检查 winstone 是否完全符合J2EE标准但是应该足以满足您的需求。 关于浏览器,我不是自己的忠实粉丝,它使很多跨平台部署变得复杂,所以值得关注 jwebpane ,尚未准备好,但可能是您需要的解决方案。

有几种选择:您可以使用Firefox的插件API并在那里开发您的应用程序。您可以使用HTML,JavaScript,内置数据库,所有浏览器功能并访问操作系统级别。

或者您可以尝试 PyQt (Python和Qt)快速编写简单的应用程序。

[编辑]您面临的主要问题是安全性:出于安全原因,JavaScript应用程序(在HTML页面中运行)无法访问本地操作系统资源。因此,除非您的浏览器允许您使用JavaScript编写插件(这仅适用于FF AFAIK),否则无法编写使用HTML作为“视图”的应用程序。没有其他东西的帮助。

此外,HTML在应用程序功能方面非常有限。 HTML被设计为“静态文档视图”。不是“应用程序”。你可以做像GMail这样的事情但如果你将GMail与任何真正的邮件应用程序(Outlook,Thunderbird,Notes)进行比较,你会很快发现真正的桌面应用程序提供了更多的功能。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top