【问题标题】:GWT server-side interaction with databaseGWT 服务器端与数据库的交互
【发布时间】:2009-11-30 22:00:55
【问题描述】:

我正在 GWT 中构建一个项目,该项目提取一个 rss 提要,在提要上执行正则表达式(在使用 JSNI 的 javascript 中),然后将生成的数据存储在用户可以访问的数据库中。

到目前为止,我一直在客户端.java 文件中编写所有代码,希望我可以简单地将其传输到服务器端。如何将部分代码移动到项目的服务器端?我现在拥有的代码太大而无法在客户端运行,所以我喜欢在服务器端运行它并将结果存储在数据库中。是否建议使用 GWT 编写服务器端代码,还是应该使用其他框架或 PHP 来完成?理想情况下,我希望使用 GWT 开发整个项目,因为到目前为止它对我来说非常有效。

我在从 GWT 的服务器端查找连接到数据库并更新它所需的资源时也遇到了麻烦。我可以用 Hibernate 做到这一点吗?

非常感谢!

【问题讨论】:

    标签: java javascript hibernate gwt server-side


    【解决方案1】:

    在我看来,您可以在服务器端运行整个程序而不使用 GWT。

    如果您确实想在客户端上进行处理,则需要通过 HTTP 将结果以文本形式提交到服务器。

    您可以使用 GWT RPC、使用 RequestBuilder 的 HTTP 请求或最终使用包含隐藏字段的 FormPanel 来执行此操作。 GWT RPC 意味着您必须用 Java 编写服务器端代码。其他两种方法可以是任何使用 HTTP 的平台:PHP、Python、.NET ...

    注意:JSNI 功能强大,但可以说您放弃了 GWT 的强大功能,即用 Java 编写客户端代码的能力。

    【讨论】:

      【解决方案2】:

      如果它在 GWT 中运行,那么它(几乎)在 Java 中运行:如果它不直接关注小部件或 JavaScript(通过 JSNI)。显然,无论如何,您都不需要在服务器上处理小部件或 JSNI 的代码。

      所以继续移动它。

      您可以使用 GWT-RPC 进行通信——您的服务器代码只是作为一个 servlet 运行,具有 Java servlet 提供的所有强大功能,包括使用 Hibernate 和其他 Java 框架的能力。您的服务器代码保留为 GWT 应用程序的一部分,但既不会翻译成 JavaScript,也不会部署在客户端上。

      关于 GWT 应用架构的最佳资源是here

      【讨论】:

      • 是的,您应该能够添加一个 rpc 服务 - 几个接口定义和一个方法实现。如果数据库工作足够简单,您可以在服务器端使用原始 JDBC,但如果您开始不得不处理关系并编写大量 CRUD 代码,请切换到 Hibernate 或类似的东西。
      猜你喜欢
      • 1970-01-01
      • 2010-12-02
      • 2011-07-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-11
      • 2015-01-02
      相关资源
      最近更新 更多