Skip to content

Commit

Permalink
Merge pull request #1 from jimmyMaci/patch-1
Browse files Browse the repository at this point in the history
Create DatabaseMetadataExtensions.java
  • Loading branch information
astrapi69 committed Apr 24, 2019
2 parents 69b16ae + fbbc846 commit 8a0713b
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 8a0713b

Please sign in to comment.