Skip to content

Commit

Permalink
Merge branch 'develop' of https://github.com/astrapi69/silly-jdbc.git
Browse files Browse the repository at this point in the history
…into develop
  • Loading branch information
astrapi69 committed Apr 28, 2019
2 parents c0488f2 + 8a0713b commit 7a48819
Showing 1 changed file with 29 additions and 0 deletions.
29 changes: 29 additions & 0 deletions src/main/java/de/alpharogroup/jdbc/DatabaseMetadataExtensions.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
package de.alpharogroup.jdbc;

import lombok.experimental.UtilityClass;
import org.springframework.jdbc.support.DatabaseMetaDataCallback;
import org.springframework.jdbc.support.JdbcUtils;
import org.springframework.jdbc.support.MetaDataAccessException;

import javax.sql.DataSource;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;

@UtilityClass
public class DatabaseMetadataExtensions {

private final static DatabaseMetaDataCallback getTableNamesDatabaseMetaDataCallback = dbmd -> {
ResultSet rs = dbmd.getTables(dbmd.getUserName(), null, null, new String[]{"TABLE"});
List<String> tables = new ArrayList<>();
while (rs.next()) {
tables.add(rs.getString(3));
}
return tables;
};

public static Object getTableNames(DataSource dataSource) throws MetaDataAccessException {
return JdbcUtils.extractDatabaseMetaData(dataSource, getTableNamesDatabaseMetaDataCallback);
}

}

0 comments on commit 7a48819

Please sign in to comment.