public interface WLCachedRowSet extends RowSet, CachedRowSet, WebRowSet, FilteredRowSet, SortedRowSet, Serializable
WLCachedRowSet
is an extension to the
javax.sql.RowSet
interface.
WLCachedRowSet
is a disconnected RowSet. Data is
read into the RowSet from a JDBC query, an existing
java.sql.ResultSet
, or an XML document.
The RowSet then has the data in memory and does not maintain any open
connections or transactions in the database.
All reads, writes, deletes, and inserts occur in memory. When the
acceptChanges
method is called, the
WLCachedRowSet
writes any inserts, updates, or deletes
to the database.
Since the WLCachedRowSet
does not hold open any
transactions between reading and updating the data, it uses
optimistic concurrency control to verify the state of the
underlying database row has not changed.
The WLCachedRowSet
interface extends
java.io.Serializable
so a WLCachedRowSet
may be serialized and sent across a network connection to a client.
The WLCachedRowSet
may be written as an XML instance
document. This XML document captures the row(s) currently cached
in the WLCachedRowSet
A WLCachedRowSet
is created from the RowSetFactory class.
RowSetFactory factory = RowSetFactory.newInstance(); WLCachedRowSet rowSet = factory.newCachedRowSet();
A detailed discussion of the WLCachedRowSet
's optimistic
concurrency control options can be found in the
WLRowSetMetaData
javadocs.
WLRowSetMetaData
Modifier and Type | Field and Description |
---|---|
static int |
ALL_ROWS
Deprecated.
XML Document includes all rows with both their changed and
original values
|
static int |
CHANGED_ALL
Deprecated.
XML Document includes the current and original values for all
changed rows.
|
static int |
CHANGED_CURRENT
Deprecated.
XML Document includes only changed rows with their current
values.
|
static int |
CHANGED_ORIGINAL
Deprecated.
XML Document includes only changed rows with their original
values.
|
static int |
CURRENT_ALL
Deprecated.
XML Document includes the current values for all rows.
|
static int |
UNCHANGED_CURRENT
Deprecated.
XML Document includes only unchanged rows.
|
PUBLIC_XML_SCHEMA, SCHEMA_SYSTEM_ID
COMMIT_ON_ACCEPT_CHANGES
CLOSE_CURSORS_AT_COMMIT, CONCUR_READ_ONLY, CONCUR_UPDATABLE, FETCH_FORWARD, FETCH_REVERSE, FETCH_UNKNOWN, HOLD_CURSORS_OVER_COMMIT, TYPE_FORWARD_ONLY, TYPE_SCROLL_INSENSITIVE, TYPE_SCROLL_SENSITIVE
Modifier and Type | Method and Description |
---|---|
String |
executeAndGuessTableName()
Deprecated.
Executes the command, parses it, and sets the table name as the first word
following the SQL keyword "from".
|
boolean |
executeAndGuessTableNameAndPrimaryKeys()
Deprecated.
Executes the command, parses it, sets the table name as the first word
following the SQL keyword "from", and then looks up the table in
DatabaseMetaData to determine the primary keys.
|
Map |
getCurrentRow()
Deprecated.
Returns a Map representing the current row in the RowSet.
|
DataSource |
getDataSource()
Deprecated.
Returns the current javax.sql.DataSource for this RowSet.
|
Map |
getRow(int index)
Deprecated.
Returns a Map representing the row at the specified index.
|
Map[] |
getRows()
Deprecated.
Returns an array of Maps representing all rows in the rowset
|
Map[] |
getRows(int startIndex,
int endIndex)
Deprecated.
Returns an array of Maps representing the rows in the rowset from
[startIndex...endIndex-1]
|
boolean |
isComplete()
Deprecated.
Returns whether the populating query read all matching rows, or
it hit the maxRows limit.
|
void |
loadXML(XMLInputStream xis)
Deprecated.
Populates the RowSet from an XML document in the XMLInputStream.
|
void |
moveToUpdateRow()
Deprecated.
Mark the current row as updated even it has no original value.
|
void |
populate(ResultSetMetaData md)
Deprecated.
Loads a ResultSet from an existing
java.sql.ResultSetMetaData . |
void |
setDataSource(DataSource dataSource)
Deprecated.
Sets the javax.sql.DataSource used for establishing JDBC
Connections.
|
void |
setRowSetSynced()
Deprecated.
Mark the whole RowSet object as it has been synced with backend DataSource.
|
void |
setRowSynced()
Deprecated.
Mark current row as it has been synced with backend DataSource.
|
void |
writeXML(XMLOutputStream xos)
Deprecated.
Writes the RowSet to the XMLOutputStream as an XML document.
|
void |
writeXML(XMLOutputStream xos,
int rowStates)
Deprecated.
Writes the RowSet as an XML document.
|
getFilter, setFilter
readXml, readXml, writeXml, writeXml, writeXml, writeXml
acceptChanges, acceptChanges, columnUpdated, columnUpdated, commit, createCopy, createCopyNoConstraints, createCopySchema, createShared, execute, getKeyColumns, getOriginal, getOriginalRow, getPageSize, getRowSetWarnings, getShowDeleted, getSyncProvider, getTableName, nextPage, populate, populate, previousPage, release, restoreOriginal, rollback, rollback, rowSetPopulated, setKeyColumns, setMetaData, setOriginalRow, setPageSize, setShowDeleted, setSyncProvider, setTableName, size, toCollection, toCollection, toCollection, undoDelete, undoInsert, undoUpdate
addRowSetListener, clearParameters, execute, getCommand, getDataSourceName, getEscapeProcessing, getMaxFieldSize, getMaxRows, getPassword, getQueryTimeout, getTransactionIsolation, getTypeMap, getUrl, getUsername, isReadOnly, removeRowSetListener, setArray, setAsciiStream, setAsciiStream, setAsciiStream, setAsciiStream, setBigDecimal, setBigDecimal, setBinaryStream, setBinaryStream, setBinaryStream, setBinaryStream, setBlob, setBlob, setBlob, setBlob, setBlob, setBlob, setBoolean, setBoolean, setByte, setByte, setBytes, setBytes, setCharacterStream, setCharacterStream, setCharacterStream, setCharacterStream, setClob, setClob, setClob, setClob, setClob, setClob, setCommand, setConcurrency, setDataSourceName, setDate, setDate, setDate, setDate, setDouble, setDouble, setEscapeProcessing, setFloat, setFloat, setInt, setInt, setLong, setLong, setMaxFieldSize, setMaxRows, setNCharacterStream, setNCharacterStream, setNCharacterStream, setNCharacterStream, setNClob, setNClob, setNClob, setNClob, setNClob, setNClob, setNString, setNString, setNull, setNull, setNull, setNull, setObject, setObject, setObject, setObject, setObject, setObject, setPassword, setQueryTimeout, setReadOnly, setRef, setRowId, setRowId, setShort, setShort, setSQLXML, setSQLXML, setString, setString, setTime, setTime, setTime, setTime, setTimestamp, setTimestamp, setTimestamp, setTimestamp, setTransactionIsolation, setType, setTypeMap, setURL, setUrl, setUsername
absolute, afterLast, beforeFirst, cancelRowUpdates, clearWarnings, close, deleteRow, findColumn, first, getArray, getArray, getAsciiStream, getAsciiStream, getBigDecimal, getBigDecimal, getBigDecimal, getBigDecimal, getBinaryStream, getBinaryStream, getBlob, getBlob, getBoolean, getBoolean, getByte, getByte, getBytes, getBytes, getCharacterStream, getCharacterStream, getClob, getClob, getConcurrency, getCursorName, getDate, getDate, getDate, getDate, getDouble, getDouble, getFetchDirection, getFetchSize, getFloat, getFloat, getHoldability, getInt, getInt, getLong, getLong, getMetaData, getNCharacterStream, getNCharacterStream, getNClob, getNClob, getNString, getNString, getObject, getObject, getObject, getObject, getObject, getObject, getRef, getRef, getRow, getRowId, getRowId, getShort, getShort, getSQLXML, getSQLXML, getStatement, getString, getString, getTime, getTime, getTime, getTime, getTimestamp, getTimestamp, getTimestamp, getTimestamp, getType, getUnicodeStream, getUnicodeStream, getURL, getURL, getWarnings, insertRow, isAfterLast, isBeforeFirst, isClosed, isFirst, isLast, last, moveToCurrentRow, moveToInsertRow, next, previous, refreshRow, relative, rowDeleted, rowInserted, rowUpdated, setFetchDirection, setFetchSize, updateArray, updateArray, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateBigDecimal, updateBigDecimal, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBlob, updateBlob, updateBlob, updateBlob, updateBlob, updateBlob, updateBoolean, updateBoolean, updateByte, updateByte, updateBytes, updateBytes, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateClob, updateClob, updateClob, updateClob, updateClob, updateClob, updateDate, updateDate, updateDouble, updateDouble, updateFloat, updateFloat, updateInt, updateInt, updateLong, updateLong, updateNCharacterStream, updateNCharacterStream, updateNCharacterStream, updateNCharacterStream, updateNClob, updateNClob, updateNClob, updateNClob, updateNClob, updateNClob, updateNString, updateNString, updateNull, updateNull, updateObject, updateObject, updateObject, updateObject, updateObject, updateObject, updateObject, updateObject, updateRef, updateRef, updateRow, updateRowId, updateRowId, updateShort, updateShort, updateSQLXML, updateSQLXML, updateString, updateString, updateTime, updateTime, updateTimestamp, updateTimestamp, wasNull
isWrapperFor, unwrap
getMatchColumnIndexes, getMatchColumnNames, setMatchColumn, setMatchColumn, setMatchColumn, setMatchColumn, unsetMatchColumn, unsetMatchColumn, unsetMatchColumn, unsetMatchColumn
getSorter, setSorter
static final int UNCHANGED_CURRENT
static final int CHANGED_CURRENT
static final int CHANGED_ORIGINAL
static final int CURRENT_ALL
static final int CHANGED_ALL
static final int ALL_ROWS
void populate(ResultSetMetaData md) throws SQLException
java.sql.ResultSetMetaData
. This method produces an
empty RowSet that can be used to insert new rows.SQLException
- if there is an error processing the
ResultSetMetaDataString executeAndGuessTableName() throws SQLException
SQLException
- if a database access error occurs or any of the
properties necessary for making a connection and creating
a statement have not been setboolean executeAndGuessTableNameAndPrimaryKeys() throws SQLException
SQLException
- if a database access error occurs or any of the
properties necessary for making a connection and creating
a statement have not been setboolean isComplete()
When execute
is called, it runs the query specified
by the setCommand
method. The user may optionally
specify a maximum number of rows to return from the query with
the setMaxRows
method.
execute
method.
Returns false if MaxRows has been set, and the query hit the maxRows limit without returning all matching rows
Map getCurrentRow() throws SQLException
Like java.sql.ResultSet
, a RowSet acts like a cursor
or Iterator with next() and previous() methods. This method
returns a java.util.Map instance representing the row at the
current position.
The returned Map has keys of the column names and values of the
column values. The column values may be read with the get(Object
key)
method and updated with put(Object key, Object value)
method. The user must call updateRow()
after
updating the Map for the RowSet to accept the updated values.
SQLException
- if the current RowSet position is not a
valid rowMap getRow(int index) throws SQLException
Note: For this method, the starting index number is 0
, which
is different than the starting index for the getRow() method inherited from java.sql.ResultSet.
The starting index for that method is 1
.
index
- row index into the row set. Valid values are [0 ...
row.size() -1]SQLException
- if the index is not a valid rowMap[] getRows(int startIndex, int endIndex) throws SQLException
startIndex
- the starting rowset indexendIndex
- the end rowset indexSQLException
- if startIndex or endIndex out of bounds or
if startIndex > endIndexMap[] getRows() throws SQLException
SQLException
- if there is an error creating the Map arrayvoid setDataSource(DataSource dataSource) throws SQLException
dataSource
- a DataSourceSQLException
DataSource getDataSource() throws SQLException
SQLException
- if the DataSource name given to
setDataSourceName cannot be found or is invalid.void loadXML(XMLInputStream xis) throws IOException, SQLException
xis
- an XMLInputStream containing a XML document
with the RowSet data.IOException
SQLException
void writeXML(XMLOutputStream xos) throws IOException, SQLException
xos
- an XMLOutputStream where the RowSet will
be writtenIOException
- if there is an error writing to the
XMLOutputStreamSQLException
- if there is an error retrieving data from
the RowSetvoid writeXML(XMLOutputStream xos, int rowStates) throws IOException, SQLException
IOException
SQLException
void setRowSynced() throws SQLException
SQLException
void setRowSetSynced() throws SQLException
SQLException
void moveToUpdateRow() throws SQLException
SQLException