## 说明
* 在日常需求中我们经常会碰到导入导出数据的需求。
* JPower考虑到这种情况,统一进行了实现。
## 如何使用
* JPower是针对Entity进行数据的导入导出,需要在Entity类加入@Excel注解。
![](https://img.kancloud.cn/29/c9/29c9a63b83143d2c0868a7266a487cd1_1702x1246.png)
* 我们把需要导入导出的字段上加入@Excel注解即可。
* @Excel注解属性具体用法可查看`com.wlcb.jpower.module.base.annotation.Excel`类里的注释;
![](https://img.kancloud.cn/6e/c7/6ec7ad0612d8c95cc30bf05b58a0dc6a_535x1255.png)
* 在Entity类中我们加入好@Excel注解之后,我们就可以调用工具类实现模板下载、数据导入、数据导出。
## 模板下载
* 一般在数据导入前都有统一的数据模板,我们可以针对Entity调用工具类实现模板的下载,具体用法如下
~~~
BeanExcelUtil<TbCoreUser> beanExcelUtil = new BeanExcelUtil<>(TbCoreUser.class,ImportExportConstants.EXPORT_TEMPLATE_PATH);
String fileName = beanExcelUtil.template("用户模板");
File file = new File(beanExcelUtil.getAbsoluteFile(fileName));
~~~
* 这样我们就得到了模板的文件(File),示例中我们是以`TbCoreUser`这个Entity为例。
## 数据导入
* 比如我们要导入数据到`TbCoreUser`这个Entity,具体代码如下
~~~
BeanExcelUtil<TbCoreUser> beanExcelUtil = new BeanExcelUtil<>(TbCoreUser.class);
//参数为上传文件
List<TbCoreUser> list = beanExcelUtil.importExcel(saveFile);
~~~
* 这样我们就把上传的文件成功转换到`TbCoreUser`这个list中
## 数据导出
* 比如我们要导出用户列表,我们查出用户列表list后,使用工具类进行生成excel,具体用法如下
~~~
BeanExcelUtil<UserVo> beanExcelUtil = new BeanExcelUtil<>(UserVo.class,ImportExportConstants.EXPORT_PATH);
//第一个参数是查出的数据list,第二个参数是sheet名称
ResponseData responseData = beanExcelUtil.exportExcel(list,"用户列表");
File file = new File(ImportExportConstants.EXPORT_PATH+responseData.getData());
~~~
* 这样我们就得到了生成后的Excel文件,我们可以进行下载或者其他操作。
## 注意项
* JPower针对导入导出可以有很多设置,有兴趣的大家可以自行研究,具体配置可以查看@Excel;
* 针对一些特别复杂导入导出的需求,建议还是代码写死来实现;这里只是提供一种比较通用的工具类;
- 序言
- 开发环境准备
- 环境要求
- 环境安装
- 基础环境安装
- Nacos安装
- Sentinel安装
- 插件安装
- 导入工程
- 运行工程
- 工程测试
- JPower特性
- 系统启动器
- 多终端令牌认证
- 系统鉴权
- 鉴权API
- 鉴权配置
- API权限配置
- 接口放行配置
- 数据权限
- redis缓存
- 动态网关
- 聚合文档
- SaaS多租户
- 概念
- 使用
- Xss防注入
- 日志记录
- 操作日志&错误日志
- SQL打印
- feign请求日志&配置
- gateway日志
- 服务日志打印
- 导入导出
- 字典查询
- 系统文件上传下载
- 接口监控
- 代码生成器
- 配置文件共享
- Mybatis过滤器
- 配置说明
- 高级实战
- nacos动态配置
- Seata分布式事务
- 简介
- docker启动
- 微服务配置
- 微服务远程调用
- 声明式服务调用 Feign
- 熔断机制 Sentinel
- sentinel流控
- 简介
- 微服务配置
- 配置nacos对接
- APM监控&链路追踪
- 简介
- 安装
- 微服务接入
- SpringBootAdmin监控
- ELK分布式日志追踪系统
- ELK简介
- ELK一键部署
- 微服务日志对接ELK
- JPower-Chat
- 配置说明
- 生产部署
- docker部署
- docker安装
- docker-compose安装
- harbor安装
- 部署步骤
- 版本升级
- 1.0.1升级到2.0.0
- 2.0.0升级到2.0.2
- 2.0.2升级2.1.0
- 2.1.0升级到2.1.1
- 2.1.1升级到2.1.2
- 2.1.2升级到2.1.4