SpringBoot使用JeecgBoot中的Autopoi功能如何实现导出Excel

  介绍

这篇文章运用简单易懂的例子给大家介绍SpringBoot使用JeecgBoot中的Autopoi功能如何实现导出Excel,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

说到导出Excel,我们首先会想到芋泥,jsxl等,使用这些工具会显得笨重,学习难度大。今天学习使用JeecgBoot中的Autopoi导出Excel,底层基于easypoi,使用简单,还支持数据字典方式

<强> 1,引入maven依赖

& lt; !——AutoPoi Excel工具类——比;   & lt; dependency>   & lt; groupId> org.jeecgframework   & lt; artifactId> autopoi-web   & lt; version> 1.1.1   & lt; exclusions>   & lt; exclusion>   & lt; groupId> commons-codec   & lt; artifactId> commons-codec   & lt;/exclusion>   & lt;/exclusions>   & lt;/dependency>

除外责任是将commons-codec从autopoi中排除,避免冲突

<强> 2,切换Jeecg镜像

以下代码放在砰的一声。xml文件中父母的标签下面

& lt; repositories>   & lt; repository>   & lt; id> aliyun   & lt; name>王坚Repository   & lt; url> http://maven.aliyun.com/nexus/content/groups/public</url>   & lt; snapshots>   & lt; enabled> false   & lt;/snapshots>   & lt;/repository>   & lt; repository>   & lt; id> jeecg   & lt; name> jeecg Repository   & lt; url> http://maven.jeecg.org/nexus/content/repositories/jeecg</url>   & lt; snapshots>   & lt; enabled> false   & lt;/snapshots>   & lt;/repository>   & lt;/repositories>

可以看的到,这里我们配置了阿里巴巴的国内镜像,还配置了jeecg的镜像,这样方便我们下载依赖文件

<强> 3,导出工具类

我们把导出Excel通用方法写在ExcelUtils。java文件中

进口org.jeecgframework.poi.excel.def.NormalExcelConstants;
  进口org.jeecgframework.poi.excel.entity.ExportParams;
  进口org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
  进口org.springframework.web.servlet.ModelAndView;
  
  进口并不知道;/* *
  *导出excel工具类
  *
  * @author彩条
  */公开课ExcelUtils {/* *
  *导出excel
  *
  * @param标题文件标题
  * @param clazz实体类型
  * @param exportList导出数据
  * @param & lt; T>
  * @return
  */公共静态& lt; T>ModelAndView出口(字符串标题,Classclazz ListexportList) {
  ModelAndView mv=new ModelAndView(新JeecgEntityExcelView ());
  mv.addObject (NormalExcelConstants。FILE_NAME、标题);
  mv.addObject (NormalExcelConstants。类,clazz);
  mv.addObject (NormalExcelConstants。参数,新的ExportParams(标题、标题));
  mv.addObject (NormalExcelConstants。DATA_LIST exportList);
  返回mv;
  }
  
  }

这样我们导出数据的时候,只需要传入文件的标题(标题同样作为表格的标题),数据类型,数据集合,就可以导出数据了

<强> 1,给实体类加注解

我们将需要导出的实体类或签证官类中的属性加上注解@Excel

包com.zyxx.sys.entity;
  
  进口com.baomidou.mybatisplus.annotation。*;
  进口com.baomidou.mybatisplus.extension.activerecord.Model;
  进口com.zyxx.common.annotation.Dict;
  进口io.swagger.annotations.ApiModel;
  进口io.swagger.annotations.ApiModelProperty;
  进口lombok.Data;
  进口lombok.EqualsAndHashCode;
  进口lombok.experimental.Accessors;
  进口org.jeecgframework.poi.excel.annotation.Excel;
  
  进口java.io.Serializable;/* *
  * & lt; p>
  *用户信息表
  * & lt;/p>
  *
  * @author彩条
  * @since 2020-07-06
  */@ data
  @EqualsAndHashCode (callSuper=false)
  @Accessors(链=true)
  @TableName (“sys_user_info")
  @ApiModel(值=https://www.yisu.com/zixun/盨ysUserInfo对象”,描述=坝没畔⒈怼?
  公共类SysUserInfo扩展模型 {
  
  
  @ApiModelProperty (value=" ID ")
  @TableId (value=" id ",输入=IdType.AUTO)
  私人长id;
  
  @Excel (name="账号”,宽度=15)
  @ApiModelProperty (value="登录账号”)
  @TableField(“帐户”)
  私人的字符串;
  
  @ApiModelProperty (value="登录密码”)
  @TableField(“密码”)
  私人密码字符串;
  
  @Excel (name="姓名”,宽度=15)
  @ApiModelProperty (value="姓名”)
  @TableField(“名字”)
  私人字符串名称;
  
  @Excel (name="电话”,宽度=15)
  @ApiModelProperty (value="电话”)
  @TableField(电话)
  私人字符串电话;
  
  @ApiModelProperty (value="头像”)
  @TableField(《阿凡达》)
  私人字符串《阿凡达》;
  
  @Excel (name="性别”,宽度=15)
  @ApiModelProperty (value="性别(0,未知1男2女)”)
  @TableField(“性”)
  私人整数性;
  
  @Excel (name="状态”,宽度=15)
  @ApiModelProperty (value="状态(0——正常1——冻结)”)
  @TableField(“地位”)
  私人整数状态;
  
  @Excel (name="创建时间”,宽度=30)
  @ApiModelProperty (value="创建时间”)
  @TableField (“create_time”)
  私人字符串createTime;
  李}

SpringBoot使用JeecgBoot中的Autopoi功能如何实现导出Excel