1

我有一个相当大的(80k loc)java 桌面应用程序,它与数据库通信。我们现在正在考虑通过 Web 应用程序公开数据库的某些部分,使用现有的代码库,最好不必修改它。

我在数据访问、业务逻辑和表示层之间有很好的分离,但我们没有使用企业 Java bean 或类似的东西(如果这很重要的话)。

最好的前进方式是什么?哪个 java web 框架最适合这个问题?学习曲线并不是很重要,因为我还没有在网络上做过任何 Java 开发......

4

2 回答 2

1

确实,这取决于您已经拥有什么,以及您当前桌面应用程序的设计有多好。如果不修改它,你可能无法使用任何现有代码,或者可能是最小的现有代码,如果它的设计糟糕,并且一切都是紧密耦合的。

假设您拥有一个设计良好的系统,那么一切都可以很好地解耦。您可以查看Stripes为网络制作演示文稿,并使用您现有的数据访问和业务代码。我祝你一切顺利。

很少有其他值得研究的好东西是Grail 上的 GroovyWicket

不推荐SeamSpring这样的东西,它们更像是一个容器和复杂的大型框架,它们几乎可以为您提供一切,解决几乎所有问题。正如您提到的,您已经拥有一个完整的系统,您只需要制作一个 Web 界面即可将其发布到 Web 上,IMO 不推荐这些。

JSF是一个很好的框架,但据少数人说,它可能会让你发疯并且学习曲线很长。

于 2009-01-21T02:38:16.537 回答
0

我推荐的两个框架是GrailsStruts 2

Grails 附带了一大堆在后台配置的东西,包括 Hibernate 和 Spring。它使生成动态页面发送到浏览器变得非常容易。您可能需要做的是设置调用 Grails 服务的控制器,这些服务引用您现有的代码,因为您可能不希望 Grails 管理您的数据库交互。Grails 的缺点不在于它是用 Groovy 编写的,这对于 Java 程序员来说很容易学习,而在于 IDE 对 Groovy 的支持仍在成熟中。不过,如果您想要快速提高生产力,这仍然是一条失败的道路。

Struts 2 提供了一个干净的命令模式框架实现,它与前端的 JSP(或速度或 FreeMarker 模板)对话。要使用它,您将配置操作以调用现有代码。您可能需要根据您的需要调查将 Spring 添加到组合中。

还有其他选择,但这是我取得了一些成功的两个。

于 2009-01-21T05:28:50.577 回答