public class SchemaMetadataManager extends Object implements MetadataManager
| 限定符和类型 | 字段和说明 |
|---|---|
protected String |
dbName |
protected String |
defaultCatalog |
protected String |
defaultSchema |
protected ConnectionSource |
ds |
protected TableDesc |
NOT_EXIST |
protected DBStyle |
style |
protected ThreadSafeCaseInsensitiveHashMap |
tableInfoMap |
| 构造器和说明 |
|---|
SchemaMetadataManager(ConnectionSource ds,
DBStyle style) |
SchemaMetadataManager(ConnectionSource ds,
String defaultSchema,
String defaultCatalog,
DBStyle style) |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
addTableVirtual(String realTable,
String virtual) |
Set<String> |
allTable() |
protected void |
close(Connection conn) |
protected TableDesc |
copyVirtualTable(String virtualName,
TableDesc desc) |
boolean |
existTable(String tableName)
表是否在数据库中
|
protected String |
getDbSchema(DatabaseMetaData dbmd,
String namespace) |
protected String |
getDbSchema(String namespace) |
protected String[] |
getScope(String catalog,
String schema)
需要查看的元信息,包含表和视图
|
TableDesc |
getTable(String name) |
protected TableDesc |
getTableFromMap(String tableName) |
protected String |
getTableNamePattern(DatabaseMetaData meta) |
Map<String,String> |
getTableVirtual()
真表和假表
|
protected void |
initDefaultSchema() |
protected TableDesc |
initOtherSchemaTable(String tablePrefix,
String table)
对于"xxx.yy"这种表名解析
|
protected void |
moreInfo(TableDesc tableDesc)
对表定义进行修改
|
void |
refresh()
非线程安全,只能开发模式下使用,比如在线代码生成
|
protected void |
setDBDefaultSchema(Connection conn)
jdbc驱动不支持获取schema情况下,猜一下。
|
protected void |
setSchemaAndCatalogByConnection(Connection conn)
通过Conn来获取schema和catalog
|
protected ConnectionSource ds
protected ThreadSafeCaseInsensitiveHashMap tableInfoMap
protected TableDesc NOT_EXIST
protected DBStyle style
protected String defaultSchema
protected String defaultCatalog
protected String dbName
public SchemaMetadataManager(ConnectionSource ds, DBStyle style)
public SchemaMetadataManager(ConnectionSource ds, String defaultSchema, String defaultCatalog, DBStyle style)
public boolean existTable(String tableName)
existTable 在接口中 MetadataManagertableName - public TableDesc getTable(String name)
getTable 在接口中 MetadataManagerpublic Set<String> allTable()
allTable 在接口中 MetadataManagerpublic void refresh()
protected TableDesc initOtherSchemaTable(String tablePrefix, String table)
tablePrefix - table - protected void close(Connection conn)
protected void initDefaultSchema()
protected void setSchemaAndCatalogByConnection(Connection conn) throws SQLException
conn - SQLExceptionprotected void setDBDefaultSchema(Connection conn) throws SQLException
conn - SQLExceptionDBStyle.getDefaultSchema()protected String getDbSchema(DatabaseMetaData dbmd, String namespace)
namespace - protected void moreInfo(TableDesc tableDesc)
tableDesc - SchemaLessMetaDataManagerprotected String getTableNamePattern(DatabaseMetaData meta) throws SQLException
SQLExceptionpublic void addTableVirtual(String realTable, String virtual)
addTableVirtual 在接口中 MetadataManagerCopyright © 2021. All rights reserved.