中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何使用easypoi導入excel

發布時間:2021-06-18 16:48:12 來源:億速云 閱讀:1310 作者:Leah 欄目:大數據

這篇文章給大家介紹如何使用easypoi導入excel,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

使用easypoi導入excel

easypoi導入excel需要引入依賴:

<!--easypoi 導出導入excel依賴-->
            <dependency>
                <groupId>cn.afterturn</groupId>
                <artifactId>easypoi-base</artifactId>
                <version>3.2.0</version>
            </dependency>
            <dependency>
                <groupId>cn.afterturn</groupId>
                <artifactId>easypoi-web</artifactId>
                <version>3.2.0</version>
            </dependency>
            <dependency>
                <groupId>cn.afterturn</groupId>
                <artifactId>easypoi-annotation</artifactId>
                <version>3.2.0</version>
            </dependency>

首先我們準備一個excel模板并帶有一些數據

如何使用easypoi導入excel

第二步:準備一個實體對象

package com.xash.quartzDemo.entity;

import cn.afterturn.easypoi.excel.annotation.Excel;
import cn.afterturn.easypoi.excel.annotation.ExcelTarget;
import com.fasterxml.jackson.annotation.JsonFormat;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

@ExcelTarget("Layer")
public class Layer {
    private String layerId;

    @Excel(name = "法規名稱", isImportField = "true_st")
    private String layerName;

    @Excel(name = "法規描述", isImportField = "true_st")
    private String description;


   
    @Excel(name = "法規發布日期",importFormat = "yyyy-MM-dd")
    private String releaseTime;


 
    @Excel(name = "法規上傳日期",importFormat = "yyyy-MM-dd")
    private String recordTime;

    private String fileName;

    public String getLayerId() {
        return layerId;
    }

    public void setLayerId(String layerId) {
        this.layerId = layerId == null ? null : layerId.trim();
    }

    public String getLayerName() {
        return layerName;
    }


    public void setLayerName(String layerName) {
        this.layerName = layerName == null ? null : layerName.trim();
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description == null ? null : description.trim();
    }
   SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    public String getReleaseTime() {
        return releaseTime;
    }

  
    public void setReleaseTime(Date releaseTime) throws ParseException {
    	
        this.releaseTime =sdf.format(releaseTime);
    }

    public String getRecordTime() {
        return recordTime;
    }


    public void setRecordTime(Date recordTime) throws ParseException {
    	 this.recordTime =sdf.format(recordTime);
     
    }

    public String getFileName() {
        return fileName;
    }

    public void setFileName(String fileName) {
        this.fileName = fileName == null ? null : fileName.trim();
    }
}

此處,日期格式對象excel到實體不能自動按格式轉換,也不知道原因,所以手動格式化了日期

第三步

創建導入工具類

package com.xash.quartzDemo.util;

import java.io.File;
import java.util.List;

import org.apache.commons.lang3.StringUtils;
import org.springframework.web.multipart.MultipartFile;

import cn.afterturn.easypoi.excel.ExcelImportUtil;
import cn.afterturn.easypoi.excel.entity.ImportParams;


public class Upload {
	  public static  String executeUpload1(String uploadDir,MultipartFile file,String fileName) throws Exception
	    {
	        //文件后綴名
	        String suffix = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf("."));
	        //上傳文件名
	        String filename = fileName + suffix;
	        //服務器端保存的文件對象
	        File serverFile = new File(uploadDir + filename);
	        //將上傳的文件寫入到服務器端文件內
	        file.transferTo(serverFile);

	        return filename;
	    }

	    public static  <T> List<T> importExcel(String filePath, Integer titleRows, Integer headerRows, Class<T> pojoClass){
	        if (StringUtils.isBlank(filePath)){
	            return null;
	        }
	        ImportParams params = new ImportParams();
	        params.setTitleRows(titleRows);
	        params.setHeadRows(headerRows);
	        List<T> list = null;
	        try {
	            list = ExcelImportUtil.importExcel(new File(filePath), pojoClass, params);
	        }catch (Exception e) {
	            e.printStackTrace();

	        }
	        return list;
	    }
	    public static  <T> List<T> importExcel(MultipartFile file, Integer titleRows, Integer headerRows, Class<T> pojoClass){
	        if (file == null){
	            return null;
	        }
	        ImportParams params = new ImportParams();
	        params.setTitleRows(titleRows);
	        params.setHeadRows(headerRows);
	        List<T> list = null;
	        try {
	            list = ExcelImportUtil.importExcel(file.getInputStream(), pojoClass, params);
	        } catch (Exception e) {
	            e.printStackTrace();
	        }
	        return list;
	    }
}

本例使用   public static  <T> List<T> importExcel(String filePath, Integer titleRows, Integer headerRows, Class<T> pojoClass)方法

OK,準備工作做好后,就可以實現excel的導入工作了

準備一個controller前端控制器,

package com.xash.quartzDemo.controller;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.UUID;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import com.xash.quartzDemo.entity.Layer;
import com.xash.quartzDemo.util.Upload;

import cn.afterturn.easypoi.excel.entity.ImportParams;

@RestController
public class Eecelmport {
   
	@RequestMapping("/excel")
	public List<Layer> excel() {
	  String fliename="模板導入.xlsx";
	  List<Layer>list=null;;
	  try {
		  list=Upload.importExcel("C:/Users/gaofei/Desktop/"+fliename, 1, 3, Layer.class);
	} catch (Exception e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
	}
		
		return list;
	}


}

前端訪問:

http://192.168.2.81:8082/excel,后端響應并返回:

[{"layerId":null,"layerName":"hello","description":"hello","releaseTime":"2015-07-17","recordTime":"2015-09-17","fileName":null},{"layerId":null,"layerName":"world","description":"world","releaseTime":"2015-08-17","recordTime":"2015-10-17","fileName":null}]

關于如何使用easypoi導入excel就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

元阳县| 龙山县| 镇雄县| 宣恩县| 且末县| 岑溪市| 衢州市| 长春市| 辽阳市| 铜川市| 鸡西市| 榆中县| 祥云县| 绥德县| 泰顺县| 麻栗坡县| 黑河市| 湘潭市| 云南省| 叶城县| 安国市| 宜阳县| 寿光市| 阜新| 额敏县| 鄂温| 礼泉县| 舞钢市| 都昌县| 行唐县| 温宿县| 科尔| 澄江县| 永丰县| 滨海县| 普兰店市| 朔州市| 托里县| 郴州市| 门头沟区| 荔浦县|