Class JdbcOutboundGateway

java.lang.Object
org.springframework.integration.context.IntegrationObjectSupport
org.springframework.integration.handler.MessageHandlerSupport
org.springframework.integration.handler.AbstractMessageHandler
org.springframework.integration.handler.AbstractMessageProducingHandler
org.springframework.integration.handler.AbstractReplyProducingMessageHandler
org.springframework.integration.jdbc.JdbcOutboundGateway
All Implemented Interfaces:
org.reactivestreams.Subscriber<org.springframework.messaging.Message<?>>, org.springframework.beans.factory.Aware, org.springframework.beans.factory.BeanClassLoaderAware, org.springframework.beans.factory.BeanFactoryAware, org.springframework.beans.factory.BeanNameAware, org.springframework.beans.factory.DisposableBean, org.springframework.beans.factory.InitializingBean, org.springframework.context.ApplicationContextAware, org.springframework.core.Ordered, org.springframework.integration.context.ExpressionCapable, org.springframework.integration.context.Orderable, org.springframework.integration.core.MessageProducer, org.springframework.integration.handler.HeaderPropagationAware, org.springframework.integration.IntegrationPattern, org.springframework.integration.support.context.NamedComponent, org.springframework.integration.support.management.IntegrationManagement, org.springframework.integration.support.management.TrackableComponent, org.springframework.messaging.MessageHandler, reactor.core.CoreSubscriber<org.springframework.messaging.Message<?>>

public class JdbcOutboundGateway
extends org.springframework.integration.handler.AbstractReplyProducingMessageHandler
Since:
2.0
  • Nested Class Summary

    Nested classes/interfaces inherited from class org.springframework.integration.handler.AbstractReplyProducingMessageHandler

    org.springframework.integration.handler.AbstractReplyProducingMessageHandler.RequestHandler

    Nested classes/interfaces inherited from interface org.springframework.integration.support.management.IntegrationManagement

    org.springframework.integration.support.management.IntegrationManagement.ManagementOverrides
  • Field Summary

    Fields inherited from class org.springframework.integration.handler.AbstractMessageProducingHandler

    messagingTemplate

    Fields inherited from class org.springframework.integration.context.IntegrationObjectSupport

    EXPRESSION_PARSER, logger

    Fields inherited from interface org.springframework.integration.support.management.IntegrationManagement

    METER_PREFIX, RECEIVE_COUNTER_NAME, SEND_TIMER_NAME

    Fields inherited from interface org.springframework.core.Ordered

    HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
  • Constructor Summary

    Constructors 
    Constructor Description
    JdbcOutboundGateway​(javax.sql.DataSource dataSource, java.lang.String updateQuery)  
    JdbcOutboundGateway​(javax.sql.DataSource dataSource, java.lang.String updateQuery, java.lang.String selectQuery)  
    JdbcOutboundGateway​(org.springframework.jdbc.core.JdbcOperations jdbcOperations, java.lang.String updateQuery)  
    JdbcOutboundGateway​(org.springframework.jdbc.core.JdbcOperations jdbcOperations, java.lang.String updateQuery, java.lang.String selectQuery)  
  • Method Summary

    Modifier and Type Method Description
    protected void doInit()  
    java.lang.String getComponentType()  
    protected java.lang.Object handleRequestMessage​(org.springframework.messaging.Message<?> requestMessage)  
    void setKeysGenerated​(boolean keysGenerated)
    Flag to indicate that the update query is an insert with auto-generated keys, which will be logged at debug level.
    void setMaxRows​(java.lang.Integer maxRows)
    The maximum number of rows to query.
    void setReplySqlParameterSourceFactory​(SqlParameterSourceFactory sqlParameterSourceFactory)  
    void setRequestPreparedStatementSetter​(MessagePreparedStatementSetter requestPreparedStatementSetter)  
    void setRequestSqlParameterSourceFactory​(SqlParameterSourceFactory sqlParameterSourceFactory)  
    void setRowMapper​(org.springframework.jdbc.core.RowMapper<?> rowMapper)  

    Methods inherited from class org.springframework.integration.handler.AbstractReplyProducingMessageHandler

    doInvokeAdvisedRequestHandler, getBeanClassLoader, getIntegrationPatternType, getRequiresReply, handleMessageInternal, hasAdviceChain, onInit, setAdviceChain, setBeanClassLoader, setRequiresReply

    Methods inherited from class org.springframework.integration.handler.AbstractMessageProducingHandler

    addNotPropagatedHeaders, createOutputMessage, getNotPropagatedHeaders, getOutputChannel, isAsync, messageBuilderForReply, produceOutput, resolveErrorChannel, sendErrorMessage, sendOutput, sendOutputs, setAsync, setNotPropagatedHeaders, setOutputChannel, setOutputChannelName, setSendTimeout, shouldCopyRequestHeaders, shouldSplitOutput, updateNotPropagatedHeaders

    Methods inherited from class org.springframework.integration.handler.AbstractMessageHandler

    handleMessage, onComplete, onError, onNext, onSubscribe

    Methods inherited from class org.springframework.integration.handler.MessageHandlerSupport

    buildSendTimer, destroy, getManagedName, getManagedType, getMetricsCaptor, getOrder, getOverrides, isLoggingEnabled, registerMetricsCaptor, sendTimer, setLoggingEnabled, setManagedName, setManagedType, setOrder, setShouldTrack, shouldTrack

    Methods inherited from class org.springframework.integration.context.IntegrationObjectSupport

    afterPropertiesSet, extractTypeIfPossible, generateId, getApplicationContext, getApplicationContextId, getBeanDescription, getBeanFactory, getBeanName, getChannelResolver, getComponentName, getConversionService, getExpression, getIntegrationProperties, getIntegrationProperty, getMessageBuilderFactory, getTaskScheduler, isInitialized, setApplicationContext, setBeanFactory, setBeanName, setChannelResolver, setComponentName, setConversionService, setMessageBuilderFactory, setPrimaryExpression, setTaskScheduler, toString

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface reactor.core.CoreSubscriber

    currentContext

    Methods inherited from interface org.springframework.integration.support.management.IntegrationManagement

    getThisAs

    Methods inherited from interface org.springframework.integration.support.context.NamedComponent

    getBeanName, getComponentName
  • Constructor Details

    • JdbcOutboundGateway

      public JdbcOutboundGateway​(javax.sql.DataSource dataSource, java.lang.String updateQuery)
    • JdbcOutboundGateway

      public JdbcOutboundGateway​(javax.sql.DataSource dataSource, java.lang.String updateQuery, java.lang.String selectQuery)
    • JdbcOutboundGateway

      public JdbcOutboundGateway​(org.springframework.jdbc.core.JdbcOperations jdbcOperations, java.lang.String updateQuery)
    • JdbcOutboundGateway

      public JdbcOutboundGateway​(org.springframework.jdbc.core.JdbcOperations jdbcOperations, java.lang.String updateQuery, java.lang.String selectQuery)
  • Method Details

    • setMaxRows

      public void setMaxRows​(java.lang.Integer maxRows)
      The maximum number of rows to query. The value is set on the underlying JdbcPollingChannelAdapter. Also used to check before producing reply: if result has only one item and maxRows is not set or configured to 1, only that item is returned. Otherwise the whole list. If not specified this value will default to 1. This parameter is only applicable if a selectQuery was provided. Null values are not permitted.
      Parameters:
      maxRows - the number of rows to select. Must not be null.
      Since:
      5.1
      See Also:
      JdbcPollingChannelAdapter.setMaxRows(int)
    • setKeysGenerated

      public void setKeysGenerated​(boolean keysGenerated)
      Flag to indicate that the update query is an insert with auto-generated keys, which will be logged at debug level.
      Parameters:
      keysGenerated - the flag value to set
    • setRequestSqlParameterSourceFactory

      public void setRequestSqlParameterSourceFactory​(SqlParameterSourceFactory sqlParameterSourceFactory)
    • setRequestPreparedStatementSetter

      public void setRequestPreparedStatementSetter​(MessagePreparedStatementSetter requestPreparedStatementSetter)
    • setReplySqlParameterSourceFactory

      public void setReplySqlParameterSourceFactory​(SqlParameterSourceFactory sqlParameterSourceFactory)
    • setRowMapper

      public void setRowMapper​(org.springframework.jdbc.core.RowMapper<?> rowMapper)
    • getComponentType

      public java.lang.String getComponentType()
      Specified by:
      getComponentType in interface org.springframework.integration.support.context.NamedComponent
      Overrides:
      getComponentType in class org.springframework.integration.handler.MessageHandlerSupport
    • doInit

      protected void doInit()
      Overrides:
      doInit in class org.springframework.integration.handler.AbstractReplyProducingMessageHandler
    • handleRequestMessage

      protected java.lang.Object handleRequestMessage​(org.springframework.messaging.Message<?> requestMessage)
      Specified by:
      handleRequestMessage in class org.springframework.integration.handler.AbstractReplyProducingMessageHandler