1. 程式人生 > >mybatis怎麼實現一次插入多條資料

mybatis怎麼實現一次插入多條資料

前兩種為mybatis框架裡面的程式碼,第三種方法為純java程式碼時jdbc操作

1.複製原有資料庫中的n條記錄直接插入

    <!--複製Menu表中的所有資訊複製插入,傳入引數為#{projectid}-->
    <insert id="insertMenu" parameterType="int">
        INSERT INTO table_menu (projectid,id,fj,level,text,state,type) select #{projectid} as projectid,id,fj,level,text,state,type from table_menu where projectid=0;
    </insert>

2.傳入引數是放在一個list裡面的變數時

    <!--將所有資訊插入PP表裡面,傳入引數為list,通過<foreach>來遍歷list-->    <insert id="insert_PP" parameterType="java.util.ArrayList">
        insert into table_p_p (projectid,propertyid,value) VALUES
        <foreach collection="list" item="item" index="index" separator=",">
            (#{item.projectid},#{item.propertyid},#{item.value})
        </foreach>
    </insert>

3.用java jdbc程式碼操作資料庫時

每一條要執行的SQL語句先用字串構造好,之後呼叫JDBC.exebatch方法