2012-10-18 2 views
2

Mule ESB를 사용하여 Postgresql에 List를 전달하려고합니다.Mule ESB에서 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으로 변환되고 있었다 그것을 펌핑 한 지금까지 : 같은

내 POJO의 simplfied 버전 본다

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

Anyw : 내 데이터베이스 단계에서 내가의 라인을 따라에 삽입 쿼리에 넣어했습니다 있도록 파일에서 지금은 데이터베이스에 삽입하고 싶습니다 ay VALUES 섹션에서 사용하는 메시지 평가에 관계없이 값을 삽입하거나 오류 또는 빈 행만 가져올 수는 없습니다.

루프를 풀고 목록 항목 당 행을 삽입하려면 어떻게해야합니까?

감사

답변

2

콜렉션 스플리터를 사용하여 아웃 바운드 JDBC 엔드 포인트 직전에 오브젝트 목록을 다른 메시지로 분리하십시오. 그러면 여러 번 삽입됩니다.

+0

놀라운, 감사합니다. – magicaltrout

0

그것은 목록 항목 당 하나의 INSERT, 그래서 당신은 콜렉션 루프해야하고 각각에 대한 SQL INSERT를 실행합니다.

일괄 처리 및 거래를 고려하는 것이 가장 좋습니다. 그것들은 하나의 작업 단위입니까?