| java.lang.Object org.apache.ojb.broker.platforms.PlatformDefaultImpl org.apache.ojb.broker.platforms.PlatformOracleImpl org.apache.ojb.broker.platforms.PlatformWLOracle9iImpl
PlatformWLOracle9iImpl | public class PlatformWLOracle9iImpl extends PlatformOracleImpl (Code) | | This class is a concrete implementation of Platform . Provides
an implementation that works around some issues with Oracle running within WebLogic. As
WebLogic wraps the Oracle physical connection with its own logical connection it is necessary to
retrieve the underlying physical connection before creating a CLOB or BLOB.
NOTE : When you use the physical connection WebLogic by default marks it as "infected" and discards it when
the logicical connection is closed. You can change this behavior by setting the
RemoveInfectedConnectionsEnabled attribute on a connection pool.
see http://e-docs.bea.com/wls/docs81/jdbc/thirdparty.html#1043646
Optimization: Oracle Batching (not standard JDBC batching)
see http://technet.oracle.com/products/oracle9i/daily/jun07.html
Optimization: Oracle Prefetching
see http://otn.oracle.com/sample_code/tech/java/sqlj_jdbc/files/advanced/RowPrefetchSample/Readme.html
TODO: Optimization: use ROWNUM to minimize the effects of not having server side cursors
see http://asktom.oracle.com/pls/ask/f?p=4950:8:::::F4950_P8_DISPLAYID:127412348064
author: Matthew Baird author: Erik Forkalsrud author: Martin Kalén author: Dougall Squair version: CVS $Id: PlatformWLOracle9iImpl.java,v 1.2.2.3 2005/12/21 22:26:40 tomdz Exp $ See Also: Platform See Also: PlatformDefaultImpl See Also: PlatformOracleImpl See Also: PlatformOracle9iImplPlatformOracle9iImpl |
PARAM_BOOLEAN_TRUE | final protected static Object[] PARAM_BOOLEAN_TRUE(Code) | | |
PARAM_ROW_PREFETCH_SIZE | final protected static Object[] PARAM_ROW_PREFETCH_SIZE(Code) | | |
PARAM_STATEMENT_BATCH_SIZE | final protected static Object[] PARAM_STATEMENT_BATCH_SIZE(Code) | | |
PARAM_TYPE_BOOLEAN | final protected static Class[] PARAM_TYPE_BOOLEAN(Code) | | |
PARAM_TYPE_INTEGER | final protected static Class[] PARAM_TYPE_INTEGER(Code) | | |
PARAM_TYPE_STRING | final protected static Class[] PARAM_TYPE_STRING(Code) | | |
ROW_PREFETCH_SIZE | final protected static int ROW_PREFETCH_SIZE(Code) | | |
STATEMENTS_PER_BATCH | final protected static int STATEMENTS_PER_BATCH(Code) | | |
m_batchStatementsInProgress | protected static Map m_batchStatementsInProgress(Code) | | |
afterStatementCreate | public void afterStatementCreate(java.sql.Statement stmt) throws PlatformException(Code) | | Enables Oracle row prefetching if supported.
See http://otn.oracle.com/sample_code/tech/java/sqlj_jdbc/files/advanced/RowPrefetchSample/Readme.html.
This is RDBMS server-to-client prefetching and thus one layer below
the OJB-internal prefetching-to-cache introduced in version 1.0rc5.
Parameters: stmt - the statement just created throws: PlatformException - upon JDBC failure |
beforeBatch | public void beforeBatch(PreparedStatement stmt) throws PlatformException(Code) | | Try Oracle update batching and call setExecuteBatch or revert to
JDBC update batching. See 12-2 Update Batching in the Oracle9i
JDBC Developer's Guide and Reference.
Parameters: stmt - the prepared statement to be used for batching throws: PlatformException - upon JDBC failure |
executeBatch | public int[] executeBatch(PreparedStatement stmt) throws PlatformException(Code) | | Try Oracle update batching and call sendBatch or revert to
JDBC update batching.
Parameters: stmt - the batched prepared statement about to be executed always null if Oracle update batching is used,since it is impossible to dissolve total row count into distinctstatement counts. If JDBC update batching is used, an int array isreturned containing number of updated rows for each batched statement. throws: PlatformException - upon JDBC failure |
Methods inherited from org.apache.ojb.broker.platforms.PlatformDefaultImpl | public void addBatch(PreparedStatement stmt) throws PlatformException(Code)(Java Doc) public void addPagingSql(StringBuffer anSqlString)(Code)(Java Doc) public void afterStatementClose(Statement stmt, ResultSet rs) throws PlatformException(Code)(Java Doc) public void afterStatementCreate(Statement stmt) throws PlatformException(Code)(Java Doc) public void beforeBatch(PreparedStatement stmt) throws PlatformException(Code)(Java Doc) public void beforeStatementClose(Statement stmt, ResultSet rs) throws PlatformException(Code)(Java Doc) public int bindPagingParameters(PreparedStatement ps, int index, int startAt, int endAt) throws SQLException(Code)(Java Doc) public boolean bindPagingParametersFirst()(Code)(Java Doc) public void changeAutoCommitState(JdbcConnectionDescriptor jcd, Connection con, boolean newState)(Code)(Java Doc) protected void checkForBatchSupport(Connection conn)(Code)(Java Doc) public String concatenate(String[] theColumns)(Code)(Java Doc) public String createSequenceQuery(String sequenceName, Properties prop)(Code)(Java Doc) public String createSequenceQuery(String sequenceName)(Code)(Java Doc) public String dropSequenceQuery(String sequenceName)(Code)(Java Doc) public int[] executeBatch(PreparedStatement stmt) throws PlatformException(Code)(Java Doc) protected String getConcatenationCharacter()(Code)(Java Doc) public String getEscapeClause(LikeCriteria aCriteria)(Code)(Java Doc) public byte getJoinSyntaxType()(Code)(Java Doc) public String getLastInsertIdentityQuery(String tableName)(Code)(Java Doc) public void initializeJdbcConnection(JdbcConnectionDescriptor jcd, Connection conn) throws PlatformException(Code)(Java Doc) public String nextSequenceQuery(String sequenceName)(Code)(Java Doc) public CallableStatement prepareNextValProcedureStatement(Connection con, String procedureName, String sequenceName) throws PlatformException(Code)(Java Doc) public void registerOutResultSet(CallableStatement stmt, int position) throws SQLException(Code)(Java Doc) public void setNullForStatement(PreparedStatement ps, int index, int sqlType) throws SQLException(Code)(Java Doc) public void setObjectForStatement(PreparedStatement ps, int index, Object value, int sqlType) throws SQLException(Code)(Java Doc) public boolean supportsBatchOperations()(Code)(Java Doc) public boolean supportsMultiColumnCountDistinct()(Code)(Java Doc) public boolean supportsPaging()(Code)(Java Doc) public boolean useCountForResultsetSize()(Code)(Java Doc)
|
|
|