4

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

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

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

注意:我知道 SwingWorker ;-)

4

3 回答 3

2

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

于 2008-09-27T18:09:28.607 回答
1

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

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

于 2008-09-27T11:22:05.697 回答
1

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

于 2008-09-27T14:07:57.890 回答