国产成人精品18p,天天干成人网,无码专区狠狠躁天天躁,美女脱精光隐私扒开免费观看

SpringBoot+easypoi實(shí)現數據的Excel導出

發(fā)布時(shí)間:2021-07-05 18:40 來(lái)源:腳本之家 閱讀:0 作者:進(jìn)擊的_菜雞 欄目: 開(kāi)發(fā)技術(shù)

本文實(shí)例為大家分享了SpringBoot+easypoi實(shí)現數據的Excel導出的具體代碼,供大家參考,具體內容如下

maven

<dependency>
      <groupId>cn.afterturn</groupId>
     <artifactId>easypoi-spring-boot-starter</artifactId>
     <version>4.1.0</version>
</dependency>

Controller層

// 接口不需要返回值
@RequestMapping(value = "/export-activity-data")
public void exportActivityData(@RequestParam String activityType,
                                   @RequestParam String activityState,
                                   @RequestParam String queryValue,
                                   @RequestParam String levelValue,
                                   @RequestParam String startTime,
                                   @RequestParam String endTime, HttpServletResponse response) {
        try {
            manageService.exportActivityData(TFActivityQueryParam.builder()
                    .activityState(activityState)
                    .activityType(activityType)
                    .queryValue(queryValue)
                    .levelValue(levelValue)
                    .startTime("".equals(endTime) ? null : new Date(DateTime.parse(startTime).getMillis()))
                    .endTime("".equals(endTime) ? null : new Date(DateTime.parse(endTime).getMillis())).build(), response);
        } catch (IOException e) {
           log.info( "導出失敗", e);
        }
    }

service層

public void exportActivityData(TFActivityQueryParam param, HttpServletResponse response) throws IOException {
        response.setCharacterEncoding("UTF-8");
        response.setHeader("content-Type", "application/vnd.ms-excel");
        response.setHeader("Content-Disposition",
                "attachment;filename=" + URLEncoder.encode("活動(dòng)綜合數據.xls", "UTF-8"));
        val out = response.getOutputStream();

        List<TFActivityQueryResult> tfActivityList = getTFActivityList(param);
        List<TFActivityQueryResultExportDto> exportDtoList = new ArrayList<>();
        tfActivityList.forEach(activity -> {
            TFActivityQueryResultExportDto convert = TFActivityQueryResultExportDto.convert(activity);
            if (activity.getLevelType().equals("0")) {
                convert.setAffiliation("云南省");
            } else {
                EparchyCode eparchyCode = getEparchyCodeList().stream()
                        .filter(code -> code.getEparchyCode().equals(activity.getEparchyCode()))
                        .collect(Collectors.toList()).get(0);
                convert.setAffiliation(eparchyCode.getEparchyShortName());
            }
            exportDtoList.add(convert);
        });

        Workbook workbook = ExcelExportUtil.exportExcel(
                new ExportParams("活動(dòng)綜合數據", "活動(dòng)"), TFActivityQueryResultExportDto.class, exportDtoList);
        log.info("workbook: {}", workbook);
        workbook.write(out);
        out.close();
 }

數據bean

public class TFActivityQueryResultExportDto {

    @Excel(name = "活動(dòng)編碼", width = 20)
    private String activityCode;
    @Excel(name = "活動(dòng)名稱(chēng)", width = 20)
    private String activityName;
    @Excel(name = "活動(dòng)標題", width = 20)
    private String activityTitle;
    @Excel(name = "歸屬", width = 20)
    private String affiliation;
    @Excel(name = "活動(dòng)類(lèi)型", width = 20)
    private String activityType;
    @Excel(name = "活動(dòng)時(shí)間", width = 30)
    private String activityTime;
    @Excel(name = "活動(dòng)狀態(tài)", width = 20)
    private String activityState;
    @Excel(name = "備注", width = 30)
    private String remark;

    @Excel(name = "創(chuàng  )建時(shí)間", width = 30)
    private String timeCreate;
    @Excel(name = "最新操作人", width = 30)
    private String operatorName;
    @Excel(name = "更新時(shí)間", width = 30)
    private String timeUpdate;

}

以上就是本文的全部?jì)热?,希望對大家的學(xué)習有所幫助,也希望大家多多支持腳本之家。

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自互聯(lián)網(wǎng)轉載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權請聯(lián)系QQ:712375056 進(jìn)行舉報,并提供相關(guān)證據,一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容。

亚洲国产日韩在线人成蜜芽| 丰满岳乱妇三级高清| 秋霞在线看片无码免费| 久久久久久午夜成人影院 | 亚洲AV综合久久九九| 性欧美高清视频在线观看|