PV0Spring-Batch3.0とMyBatis3.3を使用して、データを同一Step内のReaderで読み込み、Processorで加工して、WriterでDB出力する処理を行っています。DBはMySQLで、Master/Slaveの二重構成になっており、Masterは更新用、Slaveは検索用として使用しています。Spring-Batchの同一Step内でReaderではSlave用のDBを検索させ、WriterではMaster用のDBを更新させたいのですが、以下(1)(2)の方法ではDBを切り替える事ができませんでした。そもそも、Spring-Batchでは、ReaderとWriterで別のDBを参照することができないのでしょうか?できないとしたらどんな理由が考えられるのでしょうか?何かご存じの方がいらっしゃれば教えていただきたいと思います。以下の設定をしても、常にmaster側のDBを参照している。JDBCプロパティに以下の定義をします。batch.mysql.jdbc.driver=com.mysql.jdbc.ReplicationDriverbatch.mysql.jdbc.url=jdbc:mysql:replication://masterhost:3306,slavehost:3306/db名バッチの制御用XMLには、以下のトランザクション定義をして、バッチからも使えるようにします。アノテーションも使えるようにします。transaction-manager="transactionManager"/>バッチからは、上記のtransactionManagerを使うようにします。Exception.class)を付ける。(2)DBレプリケーションを自作するhttp://kwonnam.pe.kr/wiki/java/jdbc/replicationの方式。下記コードを書いて、transactionManagerのデータソースとして登録。ログを吐かせた所、Spring-batchでは以下の箇所を呼ぶのは、Step実行前の1回だけで、Reader/Writerの実行前に切り替える事はできない。更新順0自己解決しました。マスタ用とスレイブ用2種類用意して、バッチプログラム側からどちらかを参照させるようにしました。(0)ウォッチこの質問への回答やコメントをメールでお知らせします。