Java Web应用程序作为桌面应用程序,我应该选择哪些框架?

我需要创建一个Web应用程序,我可以在客户端PC上安装为桌面应用程序(数据库,jetty + war,firefox / chrome / sth portable)。

该应用程序是一个相当大的搜索应用程序(我必须使用Lucene)。 只有少数屏幕,搜索队列中的某些依赖项等。

现在我需要帮助选择正确的组件。 申请必须是:

  1. Light – 简约和用户友好的框架(Java + JavaScript)
  2. 高效 – 在旧PC上工作并快速工作
  3. 开发者友好 – 我很乐意写它;)

所以我的问题是:

  • 您对选择组件有什么建议吗?
  • 什么框架,什么混淆器?
  • 您对将Web应用程序设置为桌面应用程序有何评论?
  • 主要风险是什么?

也许你可以看看谷歌的GWT 。 您可以编写Java代码,然后将其“编译”为JavaScript。 使用它感觉就像使用桌面应用程序。 Gmail,Google Wave,…已使用此技术创建。

我认为您甚至不需要Web服务器,但编译结果是纯JavaScript +静态HML页面。 如果您再创建一个Chrome应用程序快捷方式,那么它看起来就像一个桌面应用程序;)

唯一的问题是学习曲线最初会有点陡峭,但如果你渴望学习,那么它真的很酷,你可以很容易地管理它。

以这种风格分发的许多Java Web应用程序与轻量级应用程序服务器或Web容器(如Jetty或Tomcat)一起完成。

当您单击以启动应用程序时,这实际上启动了内部托管您的应用程序的容器。 (您的应用程序可以在内部打包为WAR。)

对于轻量级数据库,可能需要查看SQLLite,HSQLDB或Apache Derby。 这些也可以与应用程序一起分发。 或者,您可以在安装过程中收集数据库凭据,并让客户维护自己的数据库。

您描述的安排将涉及工作和自定义脚本。 您将遇到创建瘦,多用户,Web应用程序然后丢弃主要好处 – 共享单个实例的麻烦。 顾客,呃,谁拥有它们! 🙂

哈,我在同一条船上。 但我有很多屏幕像普通的网络应用程序。

我的建议是:1,网络简单,没有框架。 由于网页很少,建议使用html + jquery + css; 2,轻量级数据库并不重要。 因为mysql确实花费了很少的内存,而且它是用户友好的大型社区。 3,所以请注意你的搜索引擎,并快乐编码。