【发布时间】:2012-10-04 22:12:28
【问题描述】:
我正在开发一个程序,提示用户选择他/她在酒店住宿的时间,我正在使用 JSpinner 来执行此操作。但我不知道如何从 JSpinner 中提取时间并将其以时间格式插入 MySQL 数据库。请帮助并给我一些例子。对不起菜鸟问题
【问题讨论】:
我正在开发一个程序,提示用户选择他/她在酒店住宿的时间,我正在使用 JSpinner 来执行此操作。但我不知道如何从 JSpinner 中提取时间并将其以时间格式插入 MySQL 数据库。请帮助并给我一些例子。对不起菜鸟问题
【问题讨论】:
JSpinner#getValue) 中检索数据并将其转换为时间对象。转换将取决于您的微调器模型中存储的数据。 SpinnerDataModel 可能是一个有趣的模型来支持您的微调器,Runnable 并使用新的Thread 来执行此操作。可以在JSpinner tutorial 中找到示例。例如(从那个教程复制粘贴)如果你使用SpinnerDateModel,你可以使用
SpinnerDateModel dateModel = ...;
...
setSeasonalColor(dateModel.getDate());
它允许您直接从模型中检索Date 对象,而无需进行转换。
此外,Swing concurrency tutorial 解释了为什么您应该在后台线程上更新您的数据库。它还包含有关如何从 EDT 在后台线程上执行某些内容的代码 sn-ps。但是,如果您只需要更新 db,并且 UI 中的任何内容都必须更新,则无需选择该示例代码中使用的 SwingWorker 类。在这种情况下,您可以简单地启动一个新的Thread,如上所述。网上充斥着如何实现这一目标的示例。
【讨论】:
Thread ...在你真正需要的项目中学习新东西再好不过了。