Class JDBCStream
- java.lang.Object
- 
- org.apache.solr.client.solrj.io.stream.TupleStream
- 
- org.apache.solr.client.solrj.io.stream.JDBCStream
 
 
- 
- All Implemented Interfaces:
- Closeable,- Serializable,- AutoCloseable,- Expressible,- org.apache.solr.common.MapSerializable,- org.apache.solr.common.MapWriter,- org.apache.solr.common.NavigableObject,- org.noggit.JSONWriter.Writable
 
 public class JDBCStream extends TupleStream implements Expressible Connects to a datasource using a registered JDBC driver and execute a query. The results of that query will be returned as tuples. An EOF tuple will indicate that all have been read.Supported Datatypes for most types vary by JDBC driver based on the specific java type as reported by ResultSetMetaData.getColumnClassName(int). The exception areTypes.DATE,Types.TIMEorTypes.TIMESTAMPwhich are determined by the JDBC type.Supported Java Types Java or JDBC Type Tuple Type Notes Boolean Boolean String String Short, Integer, Long Long Float, Double Double Cloband subclassesString Clobs up to length 231-1 are supported. Other subclasses of NumberLong, Double Tuple Type based on BigDecimal.scale().JDBC Types.DATEString yyyy-MM-dd, calls Date.toString()JDBC Types.TIMEString hh:mm:ss, calls Time.toString()JDBC Types.TIMESTAMPString See DateTimeFormatter.ISO_INSTANT- Since:
- 6.0.0
- See Also:
- Serialized Form
 
- 
- 
Nested Class SummaryNested Classes Modifier and Type Class Description static interfaceJDBCStream.ResultSetValueSelector- 
Nested classes/interfaces inherited from class org.apache.solr.client.solrj.io.stream.TupleStreamTupleStream.IgnoreException
 
- 
 - 
Field SummaryFields Modifier and Type Field Description protected ResultSetresultSetprotected Stringsepprotected StreamContextstreamContext
 - 
Constructor SummaryConstructors Constructor Description JDBCStream(String connectionUrl, String sqlQuery, StreamComparator definedSort)JDBCStream(String connectionUrl, String sqlQuery, StreamComparator definedSort, Properties connectionProperties, String driverClassName)JDBCStream(StreamExpression expression, StreamFactory factory)
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description List<TupleStream>children()voidclose()Closes the JDBCStreamprotected JDBCStream.ResultSetValueSelectordetermineValueSelector(int columnIdx, ResultSetMetaData metadata)protected DrivergetDriver()StreamComparatorgetStreamSort()voidopen()Opens the JDBCStreamTupleread()voidsetStreamContext(StreamContext context)ExplanationtoExplanation(StreamFactory factory)Returns an explanation about the stream objectStreamExpressionParametertoExpression(StreamFactory factory)- 
Methods inherited from class org.apache.solr.client.solrj.io.stream.TupleStreamgetCost, getShards, getShards, getStreamNodeId, writeMap
 
- 
 
- 
- 
- 
Field Detail- 
resultSetprotected ResultSet resultSet 
 - 
streamContextprotected transient StreamContext streamContext 
 - 
sepprotected String sep 
 
- 
 - 
Constructor Detail- 
JDBCStreampublic JDBCStream(String connectionUrl, String sqlQuery, StreamComparator definedSort) throws IOException - Throws:
- IOException
 
 - 
JDBCStreampublic JDBCStream(String connectionUrl, String sqlQuery, StreamComparator definedSort, Properties connectionProperties, String driverClassName) throws IOException - Throws:
- IOException
 
 - 
JDBCStreampublic JDBCStream(StreamExpression expression, StreamFactory factory) throws IOException - Throws:
- IOException
 
 
- 
 - 
Method Detail- 
setStreamContextpublic void setStreamContext(StreamContext context) - Specified by:
- setStreamContextin class- TupleStream
 
 - 
getDriverprotected Driver getDriver() throws IOException - Throws:
- IOException
 
 - 
openpublic void open() throws IOExceptionOpens the JDBCStream- Specified by:
- openin class- TupleStream
- Throws:
- IOException
 
 - 
determineValueSelectorprotected JDBCStream.ResultSetValueSelector determineValueSelector(int columnIdx, ResultSetMetaData metadata) throws SQLException - Throws:
- SQLException
 
 - 
closepublic void close() throws IOExceptionCloses the JDBCStream- Specified by:
- closein interface- AutoCloseable
- Specified by:
- closein interface- Closeable
- Specified by:
- closein class- TupleStream
- Throws:
- IOException
 
 - 
readpublic Tuple read() throws IOException - Specified by:
- readin class- TupleStream
- Throws:
- IOException
 
 - 
toExpressionpublic StreamExpressionParameter toExpression(StreamFactory factory) throws IOException - Specified by:
- toExpressionin interface- Expressible
- Throws:
- IOException
 
 - 
toExplanationpublic Explanation toExplanation(StreamFactory factory) throws IOException Description copied from interface:ExpressibleReturns an explanation about the stream object- Specified by:
- toExplanationin interface- Expressible
- Specified by:
- toExplanationin class- TupleStream
- Parameters:
- factory- Stream factory for this, contains information about the function name
- Returns:
- Explanation about this stream object containing explanations of any child stream objects
- Throws:
- IOException- throw on any error
 
 - 
childrenpublic List<TupleStream> children() - Specified by:
- childrenin class- TupleStream
 
 - 
getStreamSortpublic StreamComparator getStreamSort() - Specified by:
- getStreamSortin class- TupleStream
 
 
- 
 
-