title: How to Pass Java List of Objects to Oracle Stored Procedure Using MyBatis?
body: <p>I have been googling this for a while and cannot seem to find any real answers.</p>
  
  <p>I have an Oracle stored procedure that has a number of in parameters that have a type that is table of the table rowtype.  So for example:</p>
  
  <p><strong>Declared in the pacakge:</strong></p>
  
  <pre><code>TYPE param1_type_t IS TABLE OF table1%ROWTYPE;
  TYPE param2_type_t IS TABLE OF table2%ROWTYPE;
  TYPE param3_type_t IS TABLE OF table3%ROWTYPE;
  </code></pre>
  
  <p><strong>Oracle Procedure:</strong></p>
  
  <pre><code>PROCEDURE my_proc
  (
     parameter1    IN param1_type_t,
     parameter2    IN param2_type_t,
     parameter3    IN param3_type_t
  )
  </code></pre>
  
  <p>On the java side, I have 3 corresponding Lists of objects representing each of the parameters that are populated in Java.  Is it possible to call the Oracle procedure using MyBatis in this scenario?</p>
  
  <pre><code>&lt;update id="callOracleSP" statementType="CALLABLE"&gt;
      {CALL my_proc( #{param1, mode=IN},
                     #{param2, mode=IN},
                     #{param3, mode=IN}
                   )
      }
  &lt;/update&gt;
  </code></pre>
  
  <p>The objects themselves are simple VOs with String and Integer properties and their respective getters and setters.</p>
  
  <p>I am not really sure how to proceed.  Do I need to somehow map the Java object lists to the Oracle types?</p>