现有一个List,里面放的是User实体bean,该List里有2000多个元素,做批量insert,数据库是MYSQL,用JPA做批量插入数据的时候,查了一些资料,好像是MYSQL的存储过程不支持数组参数,没法把这个List作为参数传到存储过程里 做批量insert
考虑到性能,所以用存储过程来实现,碰到的问题是 
1、不知道如何传递参数?
2、请问大家在做大批量insert的时候 ,都是采用的什么方式来实现的(前提是MYSQL数据库)谢谢

解决方案 »

  1.   

    JDBC规范里面我没看懂有数组参数传入的方法。
    不清楚你是否用了Hibernate这样东西,如果没有只是纯JDBC,在做大批量的insert,如果插入的模式相似,比如都是insert into xxx(xx ) values(?,?) 这样的情况,采用PreparedStatement会显著提升效率,这个对其他数据库也是一样的
      

  2.   

    用数组作为参数,那就试试看
    PreparedStatement(或CallableStatement)的setArray(int parameterIndex, Array x)方法
      

  3.   

    构造sql语句,做插入
    http://blog.csdn.net/hj_545/article/details/6408270
      

  4.   

    传送的是值而非地址。mYSQL不太熟悉,具体看看insert 语句用法, 貌似是SQL的规则。