EasyExcel同步读取方式

     //数据文件路径
        String filepath = "文件路径\\ZHK(1).xls";;
        //定义表名称
        String tableName = "表名";
        List<TableData> datas = EasyExcelFactory.read(filepath)
                .excelType(ExcelTypeEnum.XLS) //指定文件格式
                .sheet(1, "ZHK(1)") //读取Sheet号
                .head(TableData.class)
                .doReadSync(); //同步读取

        String sql = "insert into "
                + tableName +
                " values(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";

        jdbcTemplate.batchUpdate(sql, new BatchPreparedStatementSetter() {
            @Override
            public void setValues(PreparedStatement ps, int i) throws SQLException {
                TableData data = datas.get(i);

                ps.setString(1,data.getZjzh());
                ps.setString(2,data.getJxzh());
                ps.setString(3,data.getXm());
                ps.setBigDecimal(4,data.getZrzj());
                ps.setBigDecimal(5,data.getLx());
                ps.setString(6,data.getSfz());
                ps.setString(7,data.getDz());
                java.util.Date date = data.getKhrq();
                if(date != null){
                    ps.setDate(8,new Date(date.getTime()));
                } else {
                    ps.setDate(8,null);
                }
                ps.setString(9,data.getZt());
                ps.setString(10,data.getShzh());
                ps.setString(11,data.getSzzh());
                ps.setString(12,data.getStzh());
                ps.setString(13,data.getTjzh());
                ps.setString(14,data.getHzzh());
                ps.setString(15,data.getGqzh());
                ps.setString(16,data.getJydmtel());
                ps.setString(17,data.getJydmtxm());
                ps.setString(18,data.getJymm());
                ps.setString(19,data.getJyqx());
                ps.setBigDecimal(20,data.getLine());
                ps.setBigDecimal(21,data.getJrzj());
                ps.setBigDecimal(22,data.getDjzj());
                ps.setBigDecimal(23,data.getJdzj());
                ps.setBigDecimal(24,data.getZhdje());
                ps.setString(25,data.getGqhm());
                ps.setLong(26, Long.parseLong(RandomStringUtils.randomNumeric(18)));
                ps.setString(27,"000000");
                ps.setLong(28,1123598813738675201L);
                ps.setLong(29,1123598813738675201L);
                ps.setDate(30, new Date(new java.util.Date().getTime()));
                ps.setLong(31,1123598813738675201L);
                ps.setDate(32, new Date(new java.util.Date().getTime()));
                ps.setInt(33,1);
                ps.setInt(34,0);
            }

            @Override
            public int getBatchSize() {
                return datas.size();
            }
        });

 

posted @ 2021-06-05 17:03  文所未闻  阅读(1869)  评论(1编辑  收藏  举报