私はSpring Batchを使用しています。複数の xml ファイル要素から構築された SQL ステートメントがあります。すべての結果は同じテーブルから取得されますが、各ステートメントの XXX は keyValue として異なります。
JdbcCursorItemReader の両方を拡張しました。setSql を使用して SQL 文字列を設定すると、これは正常に機能します。ただし、パフォーマンスは高くなく、マルチスレッド化できません。次に、SqlPagingQueryProviderFactoryBean を拡張し、タスクレットにスレッド プール エグゼキューターを追加することに切り替えました。1 つの単純な SQL ステートメントで、時間が大幅に短縮されていることに気付きました。
私が知る必要があるのは、複雑な sql をユニオンと SqlPagingQueryProviderFactoryBean で使用する方法です。これは可能ですか。確かに、このコンポーネントは単純な select from where 句以上のものを処理できます。