|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectcom.scooterframework.orm.sqldataexpress.vendor.DBAdapter
public abstract class DBAdapter
DBAdapter class. Subclass should implement all abstract methods listed in this class.
| Field Summary | |
|---|---|
protected static java.lang.String |
IGNORE
|
protected static java.lang.String |
USE_LOGIN_USER_ID_AS_SCHEMA
|
| Constructor Summary | |
|---|---|
protected |
DBAdapter()
|
| Method Summary | |
|---|---|
boolean |
canChangeTableNameCase()
Checks if table name case can be changed. Some databases such as Oracle must use uppercase of a table name in order to get meta info of the table. |
protected static int |
dotCount(java.lang.String s)
Counts how many dots in a string. |
protected java.lang.Object |
getBlobData(java.sql.Blob blob)
|
abstract java.lang.String[] |
getCatalogAndSchema(java.lang.String connName)
Returns both catalog and schema of a connection. |
protected java.lang.Object |
getClobData(java.sql.Clob clob)
|
java.lang.String |
getExpandedTableName(java.lang.String connName,
java.lang.String tableName)
Returns a full table name which may include catalog and schema. |
java.lang.String |
getExpandedTableName(java.lang.String catalog,
java.lang.String schema,
java.lang.String tableName)
Returns a full-qualified table name which may include catalog and schema. |
java.lang.String |
getExpandedTableName(java.lang.String connName,
java.lang.String catalog,
java.lang.String schema,
java.lang.String tableName)
Returns a full-qualified table name which may include catalog and schema. |
protected java.io.InputStream |
getInputStream(java.lang.Object data)
|
protected static java.lang.String |
getLoginPassword()
Returns login user id. |
protected static java.lang.String |
getLoginUserId()
Returns login user id. |
java.lang.Object |
getObjectFromResultSetByType(java.sql.ResultSet rs,
java.lang.String javaClassType,
int sqlDataType,
int index)
|
java.lang.Object |
getObjectFromStatementByType(java.sql.CallableStatement cstmt,
java.lang.String javaClassType,
int sqlDataType,
int index)
|
java.lang.String |
getOneRowSelectSQL(java.lang.String connName,
java.lang.String tableName)
Returns a SQL SELECT query which retrieves only one record from a table. |
abstract java.lang.String |
getOneRowSelectSQL(java.lang.String catalog,
java.lang.String schema,
java.lang.String tableName)
Returns a SQL SELECT query which retrieves only one record from a table. |
java.lang.String |
getRetrieveAllSQL(java.lang.String connName,
java.lang.String tableName)
Returns a SQL query statement which is used to retrieve all records of a table, such as SELECT * total FROM users. |
java.lang.String |
getRetrieveAllSQL(java.lang.String catalog,
java.lang.String schema,
java.lang.String tableName)
Returns a SQL query statement which is used to retrieve all records of a table, such as SELECT * total FROM users. |
java.lang.String |
getTotalCountSQL(java.lang.String connName,
java.lang.String tableName)
Returns a SQL query statement which is used to count all records of a table, such as SELECT count(*) total FROM users. |
java.lang.String |
getTotalCountSQL(java.lang.String catalog,
java.lang.String schema,
java.lang.String tableName)
Returns a SQL query statement which is used to count all records of a table, such as SELECT count(*) total FROM users. |
java.lang.String |
getType()
Returns type which is the class name of this adapter. |
protected static boolean |
isEmpty(java.lang.String s)
Checks if a string is empty. |
abstract java.lang.String |
preparePaginationSql(java.lang.String selectSql,
java.util.Map<java.lang.String,java.lang.Object> inputs,
java.util.Map<java.lang.String,java.lang.String> outputFilters)
Returns a SQL query for pagination. |
java.lang.String[] |
resolveCatalogAndSchemaAndTable(java.lang.String connName,
java.lang.String tableName)
Returns catalog, schema and table of a connection. |
java.lang.String[] |
resolveCatalogAndSchemaAndTable(java.lang.String catalog,
java.lang.String schema,
java.lang.String tableName)
Returns atomic catalog, schema and table based on tableName. |
java.lang.String[] |
resolveCatalogAndSchemaAndTable(java.lang.String connName,
java.lang.String catalog,
java.lang.String schema,
java.lang.String tableName)
Returns atomic catalog, schema and table based on connName, and tableName. |
java.lang.String[] |
resolveCatalogAndSchemaAndTableFromTableName(java.lang.String tableName)
Returns atomic catalog, schema and table based on tableName. |
protected static boolean |
useLoginAsSchema(java.lang.String connName)
Checks if using login user id as schema. |
boolean |
vendorSpecificSetObject(java.sql.PreparedStatement pstmt,
java.lang.Object obj,
Parameter p,
java.util.Map<java.lang.String,java.lang.Object> inputs)
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected static final java.lang.String IGNORE
protected static final java.lang.String USE_LOGIN_USER_ID_AS_SCHEMA
| Constructor Detail |
|---|
protected DBAdapter()
| Method Detail |
|---|
protected static boolean useLoginAsSchema(java.lang.String connName)
connName - the database connection name
protected static java.lang.String getLoginUserId()
protected static java.lang.String getLoginPassword()
protected static boolean isEmpty(java.lang.String s)
protected static int dotCount(java.lang.String s)
public java.lang.String getType()
public boolean canChangeTableNameCase()
public abstract java.lang.String[] getCatalogAndSchema(java.lang.String connName)
connName - database connection name
public java.lang.String[] resolveCatalogAndSchemaAndTable(java.lang.String connName,
java.lang.String tableName)
connName - database connection nametableName - table name
public java.lang.String[] resolveCatalogAndSchemaAndTable(java.lang.String catalog,
java.lang.String schema,
java.lang.String tableName)
This method assumes that value of the tableName may take one of the following three cases:
{catalog}.{schema}.{table}
{schema}.{table}
{table}
If the catalog or schema is different from those defined with the tableName, an IllegalArgumentException will be thrown.
catalog - catalog nameschema - schema nametableName - table name
public java.lang.String[] resolveCatalogAndSchemaAndTable(java.lang.String connName,
java.lang.String catalog,
java.lang.String schema,
java.lang.String tableName)
This method assumes that value of the tableName may take one of the following three cases:
{catalog}.{schema}.{table}
{schema}.{table}
{table}
If the catalog or schema is different from those defined with the connName, an IllegalArgumentException will be thrown.
connName - database connection namecatalog - catalog nameschema - schema nametableName - table name
public java.lang.String[] resolveCatalogAndSchemaAndTableFromTableName(java.lang.String tableName)
This method assumes that value of the tableName may take one of the following three cases:
{catalog}.{schema}.{table}
{schema}.{table}
{table}
This method should be overridden for those databases that do not use schema, such as MySQL database.
tableName -
public java.lang.String getExpandedTableName(java.lang.String connName,
java.lang.String tableName)
The result table name may take one of the following cases:
{catalog}.{schema}.{table}
{catalog}.{table} //for MySQL
{schema}.{table} //for Oracle
{table}
connName - connection nametableName - table name
public java.lang.String getExpandedTableName(java.lang.String catalog,
java.lang.String schema,
java.lang.String tableName)
The result table name may take one of the following cases:
{catalog}.{schema}.{table}
{catalog}.{table} //for MySQL
{schema}.{table} //for Oracle
{table}
catalog - catalog nameschema - schema nametableName - table name
public java.lang.String getExpandedTableName(java.lang.String connName,
java.lang.String catalog,
java.lang.String schema,
java.lang.String tableName)
The result table name may take one of the following cases:
{catalog}.{schema}.{table}
{catalog}.{table} //for MySQL
{schema}.{table} //for Oracle
{table}
connName - database connection namecatalog - catalog nameschema - schema nametableName - table name
public abstract java.lang.String getOneRowSelectSQL(java.lang.String catalog,
java.lang.String schema,
java.lang.String tableName)
catalog - catalog nameschema - schema nametableName - table name
public java.lang.String getOneRowSelectSQL(java.lang.String connName,
java.lang.String tableName)
connName - database connection nametableName - table name
public java.lang.String getTotalCountSQL(java.lang.String catalog,
java.lang.String schema,
java.lang.String tableName)
catalog - catalog nameschema - schema nametableName - table name
public java.lang.String getTotalCountSQL(java.lang.String connName,
java.lang.String tableName)
connName - database connection nametableName - table name
public java.lang.String getRetrieveAllSQL(java.lang.String connName,
java.lang.String tableName)
connName - database connection nametableName - table name
public java.lang.String getRetrieveAllSQL(java.lang.String catalog,
java.lang.String schema,
java.lang.String tableName)
catalog - catalog nameschema - schema nametableName - table name
public abstract java.lang.String preparePaginationSql(java.lang.String selectSql,
java.util.Map<java.lang.String,java.lang.Object> inputs,
java.util.Map<java.lang.String,java.lang.String> outputFilters)
selectSql - the original SQL statementinputs - inputsoutputFilters - outputFilters
public java.lang.Object getObjectFromResultSetByType(java.sql.ResultSet rs,
java.lang.String javaClassType,
int sqlDataType,
int index)
throws java.sql.SQLException
java.sql.SQLException
public java.lang.Object getObjectFromStatementByType(java.sql.CallableStatement cstmt,
java.lang.String javaClassType,
int sqlDataType,
int index)
throws java.sql.SQLException
java.sql.SQLException
protected java.lang.Object getBlobData(java.sql.Blob blob)
throws java.sql.SQLException,
java.io.IOException
java.sql.SQLException
java.io.IOException
protected java.lang.Object getClobData(java.sql.Clob clob)
throws java.sql.SQLException,
java.io.IOException
java.sql.SQLException
java.io.IOException
public boolean vendorSpecificSetObject(java.sql.PreparedStatement pstmt,
java.lang.Object obj,
Parameter p,
java.util.Map<java.lang.String,java.lang.Object> inputs)
throws java.lang.Exception
java.lang.Exception
protected java.io.InputStream getInputStream(java.lang.Object data)
throws java.io.FileNotFoundException
java.io.FileNotFoundException
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||