我熟悉 java.sql.DatabaseMetaData
接口(interface),但我发现它使用起来很笨拙。例如,为了找出表名,您必须调用 getTables
并循环遍历返回的 ResultSet
,使用众所周知的文字作为列名。
有没有更简单的方法获取数据库元数据?
最佳答案
使用 DdlUtils 很容易完成:
import javax.sql.DataSource;
import org.apache.ddlutils.Platform;
import org.apache.ddlutils.PlatformFactory;
import org.apache.ddlutils.model.Database;
import org.apache.ddlutils.platform.hsqldb.HsqlDbPlatform;
public void readMetaData(final DataSource dataSource) {
final Platform platform = PlatformFactory.createNewPlatformInstance(dataSource);
final Database database = platform.readModelFromDatabase("someName");
// Inspect the database as required; has objects like Table/Column/etc.
}
关于java - 在 Java 中获取数据库元数据的最简单方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/985010/