- 首先,在使用kendoui前端组件框架时,查看官网的文档是必不可少的,所以首先要学会它的基本使用,例如在这个网址https://docs.telerik.com/kendo-ui/api/javascript/ui/treeview
在数据库连接中,需要实现一个这样的 kendowindow 弹出界面,来展示数据库连接的数据库的内容,包括表,视图等等,如图所示。

- 在service中,通过数据库连接配置获取数据库中的表和视图
service中的方法:
public List<HdipTable> getTable(HdipDatabaseConnection DBConnection) {
Connection connection = this.getConn(DBConnection);
try {
DatabaseMetaData meta = connection.getMetaData();
ResultSet rs = meta.getTables(null, null, null,
new String[]{ "TABLE", "VIEW" });
HdipTable table;
List<HdipTable> tableList = new ArrayList<>();
while (rs.next()) {
table = new HdipTable(rs.getString(1), rs.getString(2), rs.getString(3),
rs.getString("TABLE_TYPE"), rs.getString("REMARKS"));
tableList.add(table);
}
return tableList;
} catch (SQLException e) {
e.printStackTrace();
List<HdipTable> tableList = new ArrayList<>();
return tableList;
} finally {
try {
if (!connection.isClosed()) {
connection.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
/**
* 获取数据库连接
*
* @param DBConnection
* @return
*/
private Connection getConn(HdipDatabaseConnection DBConnection){
this.repParams(DBConnection);
Connection connection = null;
try {
Class.forName(DBConnection.getDriverClass());
connection = DriverManager.getConnection(DBConnection.getUrl(), DBConnection.getUserName(), DBConnection.getPassword());
} catch (ClassNotFoundException | SQLException e) {
e.printStackTrace();
}
return connection;
}
- 前端页面创建TreeView:
<div id="treeView"></div>
<script>
$("#treeView").kendoTreeView({
dataSource: [
{ text: connectionName , items: [
{text: "模式"},{text:"表"},{text:"视"}
] }
],
select: function(e) {
}
})
</script>
- 前端页面ajax请求接收后台的表和视图数据,然后append到节点里去
<script>
var treeView = $("#treeView").data("kendoTreeView");
$.ajax({
type:"POST",
url:"/v1/load/DBConn/getTable",
data:d ,
contentType: 'application/json',
success:function(data){
schema=data[0].schema;
$.each( data, function( index, ele ) {
treeView.append([{text:ele.tableName,schema:ele.schema}],treeView.findByText("表"));
})
}
});
</script>