2012-03-09 8 views
1

私はクラスAがマップに似た複数のinnerClass値を持つことができる次のモデルを持っています。ibatis insert mapping

class A{ 
String id; 
public List<A.innerClass> getChildren(){ 
    return this.children; 
} 
static class innerClass{ 
    String name; 
    String email; 
} 
} 

'NAME1' 'email1' 1、 'name2の' 'EMAIL2' 私のSQLマップ、私はテーブルに(ID、名前、メールアドレス)を挿入したいので、テーブルが 1のようになります。

 <insert id="" parameterClass="A"> 
      <iterate property="children"> 
      INSERT 
       INTO table(colum1,colum2,coulum3) 
       VALUES (#children[].innerClass[].name#, #children[].innerClass[].email#, #id#) 
      </iterate> 

     </insert> 

ですが、これは例外につながりますが、誰かが正しい構文を教えてくれれば分かります。おかげ

答えて

0

私はあなたのコードでは、この行に問題があることを参照してください。

VALUES(#children [] innerClass []名#、#children [] innerClass []電子メール#、#。。。。 ID番号)

それはに変更する必要があります。

VALUES(#children []名#、#children []電子メール#、#のID番号)。。。

詳細については、このリンクを参照してください。iBatis dynamic SQL