![]() |
1
3
,然后我要做的第一件事是检查需求:
若你们真的需要你们描述的方法,那个么你们做得很好——你们可以使用定时器或者其他事件(按钮、鼠标移动等)来刷新数据。当然,随着用户数量的增加,不断的重新查询将成为性能问题。 如果是 实时监控软件 由于数据量大,所以不应将数据库置于系统的中心。您应该拥有您的客户机通过TCP(或某些类似协议)连接到的中心服务。中央服务应保持系统的最新状态(可能还有一些历史记录)。客户机可以连接到服务,并且服务应该在有新数据时通知客户机,以便避免持续轮询。数据库应该用作应用程序用于分析过去事件的日志,但不用于实时显示。 编辑: 关于安德烈的回答:我不确定这是否解决了你的问题。观察者模式通常使用subscribe/notify机制实现,以便数据源可以在数据更改时通知所有观察者。 数据绑定工作在过程中-您不能将网格直接绑定到数据库中的表。您首先需要将应用程序中的数据放入可以绑定到GUI(数据集、列表等)的对象中 |
![]() |
2
2
一些编程语言/框架内置了对数据绑定的支持。数据绑定将同步视图(表组件)和数据(数据库表)。
如果您的语言没有标准的绑定解决方案,那么看看现有的绑定解决方案是如何实现的可能会很有用,例如jgoodies绑定(它是开源的)。
编辑: 关于数据库更改的好观点。这有点难。从技术上讲,应该可以使用触发器通知客户。例如,在Oracle中,触发器可以使用高级队列在消息队列上发布数据更改事件消息,感兴趣的客户端可以监听该消息。不过,我还没有在实践中看到这一点。您通常不希望将有关gui客户端的知识放入数据库中。
|
![]() |
3
0
完美的 特定于您的需要,但许多网站只要在您更新单元格时更新表即可。这会产生大量的流量。也许您可以使用(例如)事务将更新排队,然后在用户关闭给定表时提交,按 拯救 我认为这完全取决于你的具体应用。 |
![]() |
4
0
|
![]() |
5
0
非常有帮助的安德烈。当您有机会使用数据绑定时,数据绑定似乎是最简单的方法。 哦,是的,观察者模式:
谢谢你非常好的回答。 |
![]() |
6
-1
对于网络应用来说,这很酷。但我们谈论的是一个桌面应用程序,即使在空闲时,它也应该不断更新数据库中的信息。 这与其说是编程问题,不如说是设计问题。 |
|
kaiselwyvrn · 我无法打开Visual Studio项目 1 年前 |
![]() |
4SadMemeXD · 无法在Django中选择相关类别 2 年前 |
![]() |
Agrim Singh · 用户数据。名称未显示用户名 2 年前 |
![]() |
Peloucvo · 用数据库中的数据填充JTable 2 年前 |
![]() |
Montaser Majid · 用于从多行中提取单行的SQL查询 2 年前 |
![]() |
Max J. · 用整数作为键将dict写入csv 2 年前 |