public class R2dbcMessageSource extends AbstractMessageSource<org.reactivestreams.Publisher<?>>
Message
を返す MessageSource
のインスタンス。expectSingleResult
が false(デフォルト)の場合、R2DBC クエリが実行され、Flux
が返されます。返された Flux
は、AbstractMessageSource.receive()
メソッドによって返される Message
のペイロードとして使用されます。expectSingleResult
が true の場合、クエリが実行され、クエリから返された単一のオブジェクトの Mono
が返されます。
修飾子と型 | クラスと説明 |
---|---|
class | R2dbcMessageSource.SelectCreator このクラスのインスタンスは、クエリ式のルートオブジェクトとして使用され、 StatementMapper.createSelect(java.lang.String) 流れるような API へのアクセスを制限します。 |
IntegrationManagement.ManagementOverrides
EXPRESSION_PARSER, logger
METER_PREFIX, RECEIVE_COUNTER_NAME, SEND_TIMER_NAME
コンストラクターと説明 |
---|
R2dbcMessageSource(org.springframework.data.r2dbc.core.R2dbcEntityOperations r2dbcEntityOperations, Expression queryExpression) 提供された R2dbcEntityOperations および SpEL 式を使用してインスタンスを作成します。これは、クエリ文字列または StatementMapper.SelectSpec インスタンスに解決されます。 |
R2dbcMessageSource(org.springframework.data.r2dbc.core.R2dbcEntityOperations r2dbcEntityOperations, StringSE query) 提供された R2dbcEntityOperations および SpEL 式を使用してインスタンスを作成します。これは、リレーショナルの「クエリ」文字列に解決されます。 |
修飾子と型 | メソッドと説明 |
---|---|
protected ObjectSE | doReceive() 結果をメッセージペイロードとして返すクエリを実行します。 |
StringSE | getComponentType() |
protected void | onInit() |
void | setBindFunction(java.util.function.BiFunctionSE<DatabaseClient.GenericExecuteSpec,?,DatabaseClient.GenericExecuteSpec> bindFunction) パラメーターを更新クエリにバインドするために使用される BiFunction SE を設定します。 |
void | setExpectSingleResult(boolean expectSingleResult) R2dbcEntityOperations で呼び出す find * メソッドを管理するためのフラグ。 |
void | setPayloadType(ClassSE<?> payloadType) EntityRowMapper に使用する entityClass の型を設定します。 |
void | setUpdateSql(StringSE updateSql) DatabaseClient.sql(String) メソッドに渡される更新クエリを設定します。 |
buildMessage, destroy, getBeanName, getComponentName, getManagedName, getManagedType, getOverrides, isLoggingEnabled, receive, registerMetricsCaptor, setBeanName, setHeaderExpressions, setLoggingEnabled, setManagedName, setManagedType
afterPropertiesSet, evaluateExpression, evaluateExpression, evaluateExpression, evaluateExpression, evaluateExpression, evaluateExpression, evaluateExpression, getBeanFactory, getEvaluationContext, getEvaluationContext, getMessageBuilderFactory, setBeanFactory, setConversionService
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
getIntegrationPatternType
getThisAs
public R2dbcMessageSource(org.springframework.data.r2dbc.core.R2dbcEntityOperations r2dbcEntityOperations, StringSE query)
R2dbcEntityOperations
および SpEL 式を使用してインスタンスを作成します。これは、リレーショナルの「クエリ」文字列に解決されます。R2dbcEntityOperations
が完全に初期化され、使用できる状態になっていることを前提としています。'query' は、AbstractMessageSource.receive()
メソッドを呼び出すたびに評価されます。r2dbcEntityOperations
- データベース呼び出しを実行するためのリアクティブデータベースクライアント。query
- クエリ文字列。public R2dbcMessageSource(org.springframework.data.r2dbc.core.R2dbcEntityOperations r2dbcEntityOperations, Expression queryExpression)
R2dbcEntityOperations
と SpEL 式を使用して、クエリ文字列または StatementMapper.SelectSpec
インスタンスに解決されるインスタンスを作成します。R2dbcEntityOperations
が完全に初期化され、使用できる状態にあることを前提としています。'queryExpression' は、AbstractMessageSource.receive()
メソッドを呼び出すたびに評価されます。r2dbcEntityOperations
- データベース呼び出しを実行するためのリアクティブ。queryExpression
- クエリ式。評価コンテキストのルートオブジェクトは、StatementMapper.createSelect(java.lang.String)
流れるような API の委譲用の R2dbcMessageSource.SelectCreator
です。public void setPayloadType(ClassSE<?> payloadType)
EntityRowMapper
に使用する entityClass の型を設定します。payloadType
- 使用するクラス。public void setUpdateSql(StringSE updateSql)
DatabaseClient.sql(String)
メソッドに渡される更新クエリを設定します。updateSql
- 更新クエリ文字列。public void setBindFunction(java.util.function.BiFunctionSE<DatabaseClient.GenericExecuteSpec,?,DatabaseClient.GenericExecuteSpec> bindFunction)
BiFunction
SE を設定します。bindFunction
- 使用する BiFunction
SE。public void setExpectSingleResult(boolean expectSingleResult)
R2dbcEntityOperations
で呼び出す find * メソッドを管理するためのフラグ。デフォルトは "false" です。これは、AbstractMessageSource.receive()
メソッドが DatabaseClient.sql(String)
メソッドを使用し、すべてをフェッチすることを意味します。'true' に設定すると、AbstractMessageSource.receive()
は DatabaseClient.sql(String)
を使用して 1 つをフェッチし、返される Message
のペイロードは、リストではなく payloadType
で識別される型の返されるターゲットオブジェクトになります。expectSingleResult
- 単一の結果が期待される場合は true。public StringSE getComponentType()
protected void onInit()
AbstractExpressionEvaluator
の onInit
protected ObjectSE doReceive()
payloadType
で識別された型のオブジェクトの Flux
または Mono
,または expectSingleResult
属性の値に基づいて payloadType
で識別された型の単一の要素(デフォルトは 'false' である Message
の結果として Flux
型のペイロードが得られます)のいずれかとなります。. AbstractMessageSource<org.reactivestreams.Publisher<?>>
の doReceive