【问题标题】:Are there any frameworks for handling database requests in swing applications?是否有任何框架可以在 Swing 应用程序中处理数据库请求?
【发布时间】:2010-09-13 16:30:47
【问题描述】:

我相信任何在 gui 应用程序中处理数据库请求的程序员都会遇到以下部分或全部问题:

  • 您的 GUI 冻结,因为您调用 事件中的数据库层 调度线程
  • 如果您有多个窗口/面板/jframe,用户可以在其中启动数据库请求,则性能会下降,因为您无法控制用户创建的线程
  • 用户可能能够锁定应用程序甚至数据库,因为他在第一个操作完成之前多次调用任何操作

我想知道的是:是否有任何框架可以处理在事件调度线程之外处理一组有序的长时间运行的操作(包括但不限于数据库调用,即计算)的要求?

注意:我知道 SwingWorker ;-)

【问题讨论】:

    标签: java database multithreading swing


    【解决方案1】:

    Naked Objects 促进了一个干净的域模型,它们还有一个 GUI 2 DB 映射层 -- http://www.nakedobjects.org/home/index.shtml

    【讨论】:

      【解决方案2】:

      例如应该在 Netbeans 中找到这样的东西。请参阅请求处理器。但在更简单的情况下,这不是必需的。上次我需要线程调度和控制之类的东西时,我只是使用了 J5 中包含的新并发包(我使用了 J6)。使用它的 ExecutorFactory-ies,您可以简单地实现对任务的基本控制。您也可以使用一些队列。 This PDF can help。 PDF 是用斯洛伐克语编写的,但单/多任务工作人员是用 Java 编写的;)

      【讨论】:

        【解决方案3】:

        我怀疑您会找到特定于数据库请求的内容。您可以尝试重用现有的通用任务调度库。一个例子是 Eclipse 作业 API。这不依赖于 IDE。

        http://www.eclipse.org/articles/Article-Concurrency/jobs-api.html

        【讨论】:

        • 这也是我当时的印象。我们开发了一种队列,您可以在其中添加按预定顺序执行的 SwingWorker 实例。
        猜你喜欢
        • 1970-01-01
        • 2012-05-26
        • 2021-02-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-12-16
        • 2019-08-01
        相关资源
        最近更新 更多