private void batchInsert(List<ArtistInfo> artistInfos) {
String sql = "insert into music.artistinfo_import (artist_name, smallimageurl, mediumimageurl, largeimageurl, extralargeimageurl, listeners, playcount, biosummary, biocontent) values (?,?,?,?,?,?,?,?,?)";
BatchSqlUpdate batchUpdate = new BatchSqlUpdate(jdbcTemplate.getDataSource(), sql);
batchUpdate.setBatchSize(1000);
batchUpdate.declareParameter(new SqlParameter("artist_name", Types.VARCHAR));
batchUpdate.declareParameter(new SqlParameter("smallImageUrl", Types.VARCHAR));
batchUpdate.declareParameter(new SqlParameter("mediumImageUrl", Types.VARCHAR));
batchUpdate.declareParameter(new SqlParameter("largeImageUrl", Types.VARCHAR));
batchUpdate.declareParameter(new SqlParameter("extraLargeImageUrl", Types.VARCHAR));
batchUpdate.declareParameter(new SqlParameter("listeners", Types.INTEGER));
batchUpdate.declareParameter(new SqlParameter("playcount", Types.INTEGER));
batchUpdate.declareParameter(new SqlParameter("biosummary", Types.VARCHAR));
batchUpdate.declareParameter(new SqlParameter("biocontent", Types.VARCHAR));
for (ArtistInfo ai : artistInfos) {
batchUpdate.update(new Object[]{ai.getArtist().getName(),
ai.getSmallImageUrl(), ai.getMediumImageUrl(), ai.getLargeImageUrl(),
ai.getExtraLargeImageUrl(), ai.getListeners(), ai.getPlayCount(),