Currently JdbcExecutor contains two abstract methods to obtain tables and views from the underlying JDBC database and requires adding new subclass for each different database.
I think we could use the standard JDBC API DatabaseMetadata#getTables (https://docs.oracle.com/javase/8/docs/api/java/sql/DatabaseMetaData.html#getTables-java.lang.String-java.lang.String-java.lang.String-java.lang.String:A-) to achieve the same purpose.
That way we may be able to run in a wide variety of JDBC endpoints without requiring adding a separate class every time.