废话不说代码贴上  ................public int addShop(final Shop shop) {
  final String sql="insert into shop(name,tel,text,keeper,address,vallageid,time) values" +
    "  (?,?,?,?,?,?,?)";
  KeyHolder keyHolder=new GeneratedKeyHolder();
  jdbcTemplate.update(new PreparedStatementCreator(){   public PreparedStatement createPreparedStatement(Connection con)
     throws SQLException {
    PreparedStatement ps=con.prepareStatement(sql,new String[]{"id"} );
    ps.setString(1, shop.getName());
    ps.setString(2, shop.getTel());
    ps.setInt(3, shop.getText());
    ps.setInt(4, shop.getKeeper());
    ps.setString(5, shop.getAddress());
    ps.setInt(6, shop.getVallageid());
    ps.setString(7, shop.getTime());
    return ps;
   }
  },keyHolder);
  int generatedId=keyHolder.getKey().intValue();
  System.out.println(generatedId+"=============");
  return generatedId;
 }当我加入第八个参数的时候,就插入不进去了 七个以内没问题,完美执行

解决方案 »

  1.   

    你上面 sql里只有7个 ?   第8个 你让他放哪再说这问题 跟 spring 有屁关系
      

  2.   

    sql语句只有7个?参数,为什么还要给它一个第八个参数
      

  3.   

    无语了,  你写是Spring 吗 
       跟Spring 有什么关系
      

  4.   

    吓我一跳,一个萝卜一个坑,7个坑你怎么可能容得下8个参数呢?
    还挑战spring高手,你又没有用到spring
      

  5.   

    你的SQl还用final 修饰,我看你是找骂
      

  6.   


    +1就是个jdbc,7个坑占满了, 第8个娃进不去了