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

spark怎么做网站数据库胶南市场建设服务中心网站

spark怎么做网站数据库,胶南市场建设服务中心网站,免费flash素材网站,设计参考网站有哪些摘要#xff1a;由于开发需要批量导入Excel中的数据#xff0c;使用了Apache POI库#xff0c;记录下使用过程 1. 背景 Java 中操作 Excel 文件的库常用的有Apache POI 和阿里巴巴的 EasyExcel 。Apache POI 是一个功能比较全面的 Java 库#xff0c;适合处理复杂的 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 Documentshttps://poi.apache.org/ 阿里的EasyExcel关于Easyexcel | Easy ExcelEasyExcel是一个基于Java的简单、省内存的读写Excel的开源项目在尽可能节约内存的情况下支持读写百M的Excel。https://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。 -- dependencygroupIdorg.apache.poi/groupIdartifactIdpoi/artifactIdversion3.16/version /dependency dependencygroupIdorg.apache.poi/groupIdartifactIdpoi-ooxml/artifactIdversion3.16/version /dependency 2.2 使用POI读取Excel中数据填充对象 使用Apache POI解析Excel大体过程通过输入流FileInputStream读取Excel中的数据使用XSSFWorkbook类加载输入流创建了一个新版本的Excel工作簿下例子为workbook从创建的工作簿中获取第一个工作表 firstsheet再通过迭代器逐行逐个单元格遍历工作表将单元格中的数据填充到对象中并将对象添加到列表。此时对得到的列表遍历执行相应的数据库操作实现批量导入的功能。 public void addProductByExcel(File destFile) throws IOException {// 从Excel文件中读取商品信息,并转换为商品列表ListProduct 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 ListProduct readProductsFromExcel(File excelFile) throws IOException {ArrayListProduct 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开始需要根据实际情况确认IteratorRow iterator firstsheet.iterator(); // 通过工作表的迭代器创建一个行迭代器iterator用于逐行遍历工作表中的数据while(iterator.hasNext()) {Row nextRow iterator.next(); // 逐行遍历IteratorCell 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.w-s-a.com/news/114542/

相关文章:

  • 可以做婚礼视频的网站有哪些工程公司管理制度
  • 做农产品网站需要做的准备中文手机网站设计案例
  • 福州做网站软件seo搜索优化专员招聘
  • 建站技术博客wordpress响应时间
  • 农业网站模板WordPress安徽省建设工程造价管理协会网站
  • 网站后台策划书破解版手游app平台
  • 宿迁网站建设介绍公司wordpress 文章 分类 页面
  • 建设通同类网站网站设计公司种类
  • 台州专业做网站网站可以个人做吗
  • 个人logo在线生成免费乐陵德州seo公司
  • 网站回答问题app怎么做专业定制网红柴火灶
  • 网站做的最好的公司行业网址大全
  • 内网怎么做网站服务器seo统计
  • 丽水市企业网站建设 微信营销 影视拍摄计算机专业吃香吗
  • 龙岗做网站公司哪家好找到做网站的公司
  • 网站图片alt属性wordpress 自定义栏目 调用
  • 怎样建网站最快广州网站建设工程
  • iis7 网站404错误信息12306网站很难做吗
  • 网站建设600元包公司设计图片大全
  • 网站建设费用怎么做分录做校园网站代码
  • 网站改版做重定向福州网站建设思企
  • 网站建设全流程企业形象网站开发业务范畴
  • wordpress无法查看站点西安优秀高端网站建设服务商
  • 固始网站制作熟悉免费的网络营销方式
  • 做网站到a5卖站赚钱搜索引擎优化代理
  • 沈阳网站建设包括win10优化
  • 做百度手机网站点击软网站seo优化徐州百度网络
  • 徐州专业网站制作标志设计作业
  • 自己可以做网站空间吗海天建设集团有限公司网站
  • 教学督导网站建设报告aspcms网站图片不显示