介绍
这篇文章运用简单易懂的例子给大家介绍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 List exportList) { 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