0

我有一个关于 MySQL 的问题。我正在开发一个 Swing 应用程序,它必须能够显示存储在 SQL 数据库中的文档作为 BLOB 文件的列表。我正在使用类似于此的语句更新我的数据库//

insert into materials_inf(name,material,subject,semester,teacher_first_name,teacher_last_name)
values('Physik Prufung',load_file('C:\Users\materials\1.sem_inf\Prufung_Physik'),'physiik','1','Sashka','Aleksandrova');

左侧有 8 个列表项。当用户点击其中一些时,我想为每个学期发送不同的查询。

结果应显示在右侧。结果本身代表 pdf 和 word 文档的列表。是否可以通过双击摆动界面中的任何列表项来可视化这些文件并使用 MS Word 文件打开它们?附上截图。

http://s1333.photobucket.com/user/_spartacus/media/screen_zps208e5d16.jpg.html

在此处输入图像描述

4

3 回答 3

1

是的,使用Desktop.open()

启动关联的应用程序以打开文件。

当然,您必须先将 blob 保存到具有适当扩展名的临时文件中,然后才能打开它。

不过,这不会打开应用右侧的文件。我认为在 Swing 应用程序中嵌入任何类型的本机应用程序并不容易。也许您会为 PDF 找到一些东西,但作为用户,我更希望 PDF 文件在我首选的 PDF 查看器中打开,并且对于所有其他类型的文档也是如此。

于 2013-07-23T12:12:35.267 回答
1

我应该为每个学期定义每个学期的特定查询的每个学期实施单独的方法吗?

您可能能够使用单个PreparedStatement并将查询特定文档集所需的参数传递给它。将参数存储在您的ListModel.

附录:我必须使用列表 PreparedStatement 中的 valueChanged() 方法。

不,valueChanged()当用户点击JList. 您将使用 aPreparedStatement来填充您的ListModel,例如通过addElement()of 的方法DefaultListModel。有关示例,请参见如何使用列表

于 2013-07-23T14:48:27.017 回答
0

您可以使用例如 DJNativeSwing 嵌入本机应用程序。

当然你可以嵌入 IE,也许那个浏览器可以使用 MS Word 来呈现文档......(参见http://java.dzone.com/news/dj-nativeswing-reloaded-jwebbr上的 Wong Qil 评论)

于 2013-07-24T18:24:12.023 回答