我们目前有一个位于 MS SQL Server 2005 之上的 2 层 Java Swing 应用程序。所有业务逻辑都在数据库中。客户端相当老旧(而且不是很友好),出于性能和可伸缩性的原因,我们已经开始将一些服务移植到 Java 的中间层。
但是,我们仍然有一些短期和长期目标:
为新的前端选择技术堆栈
这并不容易——我可以看到从连续体一端的 Web 应用程序到另一端的传统桌面应用程序的一切都是可行的选择。当前的前端并不是很复杂(主要是基于表单的),所以我可以看到 web/AJAX 拟合,但这是一个我们不知道我们不知道什么的领域。
我的清单上的堆栈是:
- Eclipse RCP、Netbeans RCP
- Flex/Flash、Silverlight、JavaFX
- 纯 Javascript 前端(Sprout Core、Javascript MVC、...)
- 基于 Java 的 Web 框架(Wicket、JSF、...)
找到一种使当前应用程序在远程情况下可以接受的方法
我们有一些客户将我们的应用转售给较小的客户,并且需要能够远程部署它。由于当前架构的 2 层性质,这会导致糟糕的性能(例如,调用返回 18 个结果集的存储过程)。我们过去使用过 Citrix 解决方案,但没有人喜欢这种方法。通过端口 80 连接 JDBC 听起来也是个坏主意。我开始怀疑是否有任何东西可以使用类似 X-Windows 的方法来远程仅 GUI 部分。