docs: public static List<String> getTables(DataSource ds, String schema, String tableName, TableType... types) {
  		final List<String> tables = new ArrayList<String>();
  		Connection conn = null;
  		ResultSet rs = null;
  		try {
  			conn = ds.getConnection();
  			final DatabaseMetaData metaData = conn.getMetaData();
  			rs = metaData.getTables(conn.getCatalog(), schema, tableName, Convert.toStrArray(types));
  			if (rs == null) {
  				return null;
  			}
  			String table;
  			while (rs.next()) {
  				table = rs.getString("TABLE_NAME");
  				if (StrUtil.isNotBlank(table)) {
  					tables.add(table);
  				}
  			}
  		} catch (Exception e) {
  			throw new DbRuntimeException("Get tables error!", e);
  		} finally {
  			DbUtil.close(rs, conn);
  		}
  		return tables;
  	}