当前位置: 首页 > news >正文

网站微信推广怎么做8大营销工具

网站微信推广怎么做,8大营销工具,做网站卖什么条件,做网站销售话术摘要:由于开发需要批量导入Excel中的数据,使用了Apache POI库,记录下使用过程 1. 背景 Java 中操作 Excel 文件的库常用的有Apache POI 和阿里巴巴的 EasyExcel 。Apache POI 是一个功能比较全面的 Java 库,适合处理复杂的 Offi…

摘要:由于开发需要批量导入Excel中的数据,使用了Apache POI库,记录下使用过程

 1. 背景  

        Java 中操作 Excel 文件的库常用的有Apache POI 和阿里巴巴的 EasyExcel 。Apache POI 是一个功能比较全面的 Java 库,适合处理复杂的 Office 文件操作需求;而 EasyExcel 则是一个专注于 Excel 文件读写的简单、高效工具,更适合处理 Excel 文件的批量读写需求,并且易于上手。当Excel的数据量很大时推荐使用EasyExcel更合适。

        Apache的POI 用于处理 Microsoft Office 格式文件(如Excel、Word、PowerPoint)。它支持读取、写入和操作 Excel 文件,可以处理各种 Excel 格式(如 .xls 和 .xlsx)。
Apache POI - the Java API for Microsoft Documentsicon-default.png?t=N7T8https://poi.apache.org/

        阿里的EasyExcel
关于Easyexcel | Easy ExcelEasyExcel是一个基于Java的简单、省内存的读写Excel的开源项目,在尽可能节约内存的情况下支持读写百M的Excel。icon-default.png?t=N7T8https://easyexcel.opensource.alibaba.com/docs/current/

2. Apache POI的使用

2.1 引入依赖poi和poi-ooxml

        首先,在pom.xml中配置相关依赖,并使用Maven引入

<!--引入处理Excel的POI类poi:这是Apache POI的核心模块,用于处理Excel 97-2003格式的.xls 文件。poi-ooxml:这个模块则用于处理Office Open XML格式的.xlsx 文件,它是基于XML的Office文件格式,对应于较新版本的Excel。
-->
<dependency><groupId>org.apache.poi</groupId><artifactId>poi</artifactId><version>3.16</version>
</dependency>
<dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml</artifactId><version>3.16</version>
</dependency>
2.2 使用POI读取Excel中数据填充对象

        使用Apache POI解析Excel大体过程:通过输入流FileInputStream读取Excel中的数据,使用XSSFWorkbook类加载输入流,创建了一个新版本的Excel工作簿(下例子为workbook),从创建的工作簿中获取第一个工作表 firstsheet,再通过迭代器逐行逐个单元格遍历工作表,将单元格中的数据填充到对象中,并将对象添加到列表。此时,对得到的列表遍历,执行相应的数据库操作,实现批量导入的功能。

public void addProductByExcel(File destFile) throws IOException {// 从Excel文件中读取商品信息,并转换为商品列表List<Product> products = readProductsFromExcel(destFile);for (int i = 0; i < products.size(); i++) {Product product =  products.get(i);Product productOld = productMapper.selectByName(product.getName()); // 通过商品名称来查询数据库中是否已存在同名商品if (productOld != null) {  // 查询到同名商品,则抛出自定义异常throw  new ImoocMallException(ImoocMallExceptionEnum.NAME_EXISTED);}int count = productMapper.insertSelective(product); // 不存在同名商品,则向数据库中插入当前商品信息,存储受影响的行数if (count == 0) {throw new ImoocMallException(ImoocMallExceptionEnum.CREATE_FAILED);}}
}private List<Product> readProductsFromExcel(File excelFile) throws IOException {ArrayList<Product> listProducts = new ArrayList<>();  // 用于存储读取到的商品信息FileInputStream inputStream = new FileInputStream(excelFile);  // 文件输入流 inputStream,用于读取Excel文件中的数据XSSFWorkbook workbook = new XSSFWorkbook(inputStream); // 使用XSSFWorkbook类加载输入流,创建了一个新版本的Excel工作簿workbookXSSFSheet firstsheet =  workbook.getSheetAt(0); // 获取第一个工作表,index从0还是1开始需要根据实际情况确认Iterator<Row> iterator = firstsheet.iterator();  // 通过工作表的迭代器创建一个行迭代器iterator,用于逐行遍历工作表中的数据while(iterator.hasNext()) {Row nextRow = iterator.next(); // 逐行遍历Iterator<Cell> cellIterator = nextRow.cellIterator();  // 逐个单元格遍历Product aProduct = new Product();  // 创建Product对象aProduct,用于存储当前行数据对应的商品信息// 读取单元格填充aProductwhile (cellIterator.hasNext()) {Cell nextCell = cellIterator.next();int columnIndex = nextCell.getColumnIndex(); //获取单元格的索引,即列号switch (columnIndex) {case 0:aProduct.setName((String) ExcelUtil.getCellValue(nextCell)); // 针对不同的列号执行相应的操作,将单元格数据填充到aProduct对象的相应属性中break;case 1:aProduct.setImage((String) ExcelUtil.getCellValue(nextCell));break;case 2:aProduct.setDetail((String) ExcelUtil.getCellValue(nextCell));break;case 3:Double cellValue = (Double) ExcelUtil.getCellValue(nextCell); // excel中数字类型默认为DoubleaProduct.setCategoryId(cellValue.intValue());break;case 4:cellValue = (Double) ExcelUtil.getCellValue(nextCell); // excel中数字类型默认为DoubleaProduct.setPrice(cellValue.intValue());break;case 5:cellValue = (Double) ExcelUtil.getCellValue(nextCell); // excel中数字类型默认为DoubleaProduct.setStock(cellValue.intValue());break;case 6:cellValue = (Double) ExcelUtil.getCellValue(nextCell); // excel中数字类型默认为DoubleaProduct.setStatus(cellValue.intValue());break;default:break;}}listProducts.add(aProduct); // 将填充好数据的aProduct对象添加到商品列表listProducts中}workbook.close();  // 关闭Excel工作簿inputStream.close();  // 关闭文件输入流return listProducts;
}

        综上,实现了读取Excel中的数据,填充进入对象listProducts,最终添加到数据库的功能。

http://www.zhongyajixie.com/news/40554.html

相关文章:

  • 中国建设工程招标官方网站宁波seo推广方式排名
  • 做网站六安优秀网站网页设计图片
  • 用cms做网站的缺点关键词优化如何
  • 有没有专门做一件代发的网站seo推广培训班
  • 网站搭建好之后提示网页走丢了百度导航下载2022最新版官网
  • 长春免费建站企业文化建设方案
  • 西宁做腋臭哪里北大DE网站免费技能培训在哪里报名
  • 网站部署 模板百度seo收费
  • 牡丹江生活信息网网站内容优化关键词布局
  • 于都建设银行网站招聘万网的app叫什么
  • 常州做的网站的公司百度开户怎么开
  • 前端怎么接私活做网站权重查询爱站网
  • 用vultr做网站专业做网站官网
  • 受欢迎的永州网站建设网站检测
  • 商贸行业网站建设公司百中搜
  • 广州淘宝网站建设长沙新媒体营销
  • e网站的图标怎么做优化推广服务
  • 园林公司网站模板壹起航网络推广的目标
  • 网站上做地图手机上显示在线资源链接
  • 省 两学一做 专题网站百度应用商店下载安装
  • 做 耽美小说下载网站有哪些最新全国疫情实时大数据
  • 南京移动网站建设制作一个简单的html网页
  • 专业做网站较好的公司广州大丰seo排名
  • 网站seo收费小程序开发需要哪些技术
  • 沈阳中小企业网站制作百度网站推广一年多少钱
  • 指定图片做logo网站外包网站
  • 在阿里云做视频网站需要什么百度seo是啥
  • 芜湖网站建设兼职广州网络推广外包
  • 网站建设和微信小程序网站运营一个月多少钱
  • 企业解决方案漫画seo建站教学