2

我正在尝试使用 Mule ESB 将列表传递给 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;
    }

    }

这是通过一个肥皂网络服务作为列表传入的

直到现在我已经将它简单地转换为 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

它是 List 中的每个条目一个 INSERT,因此您应该遍历集合并为每个条目执行 SQL INSERT。

最好考虑批处理和事务。它们是一个工作单元吗?

于 2012-10-18T17:00:51.810 回答