ssm 批量插入案例(MySQL)

用ssm框架批量插入记录的简单案例,批量插入用的不是很多,但是用的过程中问题较多

数据库为mysql,数据库设计为主键自增长,

很少写博客,有不足之处还请留言,绝对对你有帮助,请给个赞吧!

POLO中注意添加不含id的构造方法

public BatchTest_student(String name, String address, Integer age, char sex, Date createDate) {
super();
//this.id = id;
this.name = name;
this.address = address;
this.age = age;
this.sex = sex;
this.createDate = createDate;
}

在controller中是对数据处理是重点

  List<BatchTest_student> list = new ArrayList<BatchTest_student>();
  for (int i = 0; i <5; i++) {
    student = new BatchTest_student(
    (request.getParameter("name")+i),
    request.getParameter("address"),
    (Integer.valueOf(request.getParameter("age"))+i),
    (i%2==0?'男':'女'),
    (new Date())
  );
  list.add(student);
  }
在service跟dao层比较简单,这里就忽略了,

然后就是在mybaties的xml中插入语句了,这个不是很常见,但是在网上找了很多,能用的就这个了

<insert id="batchTestSave" parameterType="java.util.List">
INSERT INTO t_batch_test (name,age,address,sex,create_time)VALUES
  <foreach collection="list" index="index" item="item" separator=",">
  (
    #{item.name,jdbcType=VARCHAR},
    #{item.age,jdbcType=INTEGER},
    #{item.address,jdbcType=VARCHAR},
    #{item.sex,jdbcType=CHAR},
    #{item.createDate,jdbcType=TIMESTAMP}
  )
  </foreach>
</insert>

注意item后面的属性是跟实体类中的对应的,

第二次写博客,大牛如果有更好的解决办法请留言分享下

 

posted @ 2016-08-26 09:56  青春不打烊  阅读(842)  评论(0编辑  收藏  举报