我想为我的开源项目[1]编写一个Eclipse插件,其中包含一个显示表内容的属性视图。该表可能来自SQL数据库(例如SqLite或MySql)。 是否有一个很好的开源" SQL表视图组件/小部件"我可以使用我的eclipse插件吗?
理想情况下,该组件看起来类似于 Navicat 或 MySqlWorkbench 的表格视图(参见下面的屏幕截图[4]), 包括
行数限制以及导航带页面的行的可能性("转到第2页以显示接下来的500条记录")
一种过滤/排序表内容的方法,例如在表格顶部显示小sql编辑器,包括当前查询(" SELECT * FROM mytable"或" SELECT id FROM mytable")
第一列包括"行标题"显示行号。 (并非每个表视图都支持行标题...)
一种自动适应表格结构的方法。如果sql结果集包含例如五列,则应该为表视图自动创建这五列。
似乎有一些选择(见下文)。在评估之前
它们中的哪一个提供了一个很好的 API 我可以在我自己的eclipse插件中使用
其中哪一个过时了
其中有哪些问题/错误
...我想问你你的经验和建议。什么是优缺点,什么是您已经使用过的最好的开源SQL表查看器组件?
可能的候选人我到目前为止找到了:
来自Eclipse DTP项目的ResultViewControl:http://wiki.eclipse.org/Results_View_Control
Eclipse SQL Explorer:http://eclipsesql.sourceforge.net/
QuantumDB Eclipse插件:http://quantum.sourceforge.net/
DBeaver:http://dbeaver.jkiss.org
如果我从头开始,我基本上更喜欢基于JFace的解决方案。如果需要,我还可以尝试包含JavaFx TableView [2]或像Nebula Grid Widget这样的组件[3]。如果你知道我可以用于我的SQL表查看器的替代表视图组件,请告诉我。
[1] Treez:http://sourceforge.net/projects/treez/
[2]在JavaFx TableView中显示SQL数据:How to fill up a TableView with database data
[3]星云网格小部件(支持行标题):https://eclipse.org/nebula/widgets/grid/grid.php
[4]截屏的图像来源:How to view table contents in Mysql Workbench GUI?