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.ManagementOverridesEXPRESSION_PARSER, loggerMETER_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) パラメーターを更新クエリにバインドするために使用される BiFunctionSE を設定します。 |
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, setManagedTypeafterPropertiesSet, evaluateExpression, evaluateExpression, evaluateExpression, evaluateExpression, evaluateExpression, evaluateExpression, evaluateExpression, getBeanFactory, getEvaluationContext, getEvaluationContext, getMessageBuilderFactory, setBeanFactory, setConversionServicecloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSEgetIntegrationPatternTypegetThisAspublic 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)
BiFunctionSE を設定します。bindFunction - 使用する BiFunctionSE。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