SchemaCrawler (स्वतंत्र और खुला स्रोत) है, जो इस उद्देश्य के लिए बनाया गया एक और एपीआई है पर एक नजर डालें। कुछ नमूना SchemaCrawler कोड:
// Create the options
final SchemaCrawlerOptions options = new SchemaCrawlerOptions();
// Set what details are required in the schema - this affects the
// time taken to crawl the schema
options.setSchemaInfoLevel(SchemaInfoLevel.standard());
options.setShowStoredProcedures(false);
// Sorting options
options.setAlphabeticalSortForTableColumns(true);
// Get the schema definition
// (the database connection is managed outside of this code snippet)
final Database database = SchemaCrawlerUtility.getDatabase(connection, options);
for (final Catalog catalog: database.getCatalogs())
{
for (final Schema schema: catalog.getSchemas())
{
System.out.println(schema);
for (final Table table: schema.getTables())
{
System.out.print("o--> " + table);
if (table instanceof View)
{
System.out.println(" (VIEW)");
}
else
{
System.out.println();
}
for (final Column column: table.getColumns())
{
System.out.println(" o--> " + column + " (" + column.getType()
+ ")");
}
}
}
}
http://schemacrawler.sourceforge.net/
स्रोत
2009-06-16 19:12:44
आप कनेक्शन अपने आप को बंद करने के लिए की जरूरत है या getDatabase() विधि क्या करता है कि आप के लिए है? –
@AndrewSwan - SchemaCrawler आपके लिए कनेक्शन बंद नहीं करेगा। आपको इसे स्वयं बंद करना होगा। –
उस स्थिति में आप अपना उदाहरण अपडेट करना चाहेंगे ताकि अंत में ब्लॉक में कनेक्शन बंद हो जाए? –