2

MuleESBを使用してリストをPostgresqlに渡そうとしています。

私のpojoの簡略化されたバージョンは次のようになります。

    public class NewEntry {
    private String positionReference;
    private String productID;

@XmlElement(required=true, name="PositionReference")
public String getPositionReference() {
    return positionReference;
}
public void setPositionReference(String positionReference) {
    this.positionReference = positionReference;
}
@XmlElement(required=true, name="ProductID")
public String getProductID() {
    return productID;
}
public void setProductID(String productID) {
    this.productID = productID;
    }

    }

これは、SOAPWebサービスを介してリストとして渡されます

これまでは、JSONに変換してファイルに出力するだけでしたが、データベースに挿入したいので、データベースの手順で、次の行に沿って挿入クエリを挿入しました。

<jdbc:query key="insertrecord" value="INSERT INTO f_intraday_rt(version) VALUES (#[message:productDescription]);"/>

とにかく、VALUESセクションでどのメッセージ評価を使用しても、値を挿入することはできません。エラーまたは空白行だけです。

ループをアンバンドルしてリストアイテムごとに行を挿入するにはどうすればよいですか?

ありがとう

トム

4

2 に答える 2

2

コレクション スプリッターを使用して、アウトバウンド JDBC エンドポイントの直前でオブジェクトのリストを異なるメッセージに分割します。これにより、複数の挿入が実行されます。

于 2012-10-18T17:15:03.010 に答える
0

リスト内のエントリごとに 1 つの INSERT であるため、コレクションをループして、それぞれに対して SQL INSERT を実行する必要があります。

バッチ処理とトランザクションについて考えるのが最善です。それらは 1 つの作業単位ですか?

于 2012-10-18T17:00:51.810 に答える