# sunny-excel
**Repository Path**: chenll/sunny-excel
## Basic Information
- **Project Name**: sunny-excel
- **Description**: 一款在web 环境下 通过注解实现的excel 上传下载的 轻量级excel工具
- **Primary Language**: Java
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 1
- **Created**: 2021-10-13
- **Last Updated**: 2021-10-13
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# sunny-excel
#### 介绍
一款在web 环境下 通过注解实现的excel 上传下载的 轻量级excel工具
#### 软件架构
软件架构说明
#### 安装教程
1. 源码安装,代码git clone 下来 打包 成jar,然后项目中直接引用
com.shucq
sunny-excel
1.0-SNAPSHOT
#### 使用说明
1. excel 下载 使用:
1.新建一个类 继承 ExcelDataDownloadable,并且 @Component,让Spring 管理。
2.对于要导出的模板类 可以通过如下配置:
用@Excel标识该类是一个excel 模板
@ExcelCol 标识单元格。
2.excel上传解析List
1. 配置该DTO 类 标致为Excel, @ExcelCol(字段) 标识单元格
2. 配置拦截器
3. @ExcelFile(dataClass = SubsidiaryRecord.class)
@ExcelFile 标致是excel文件,dataClass 标致将excel转成这个类的实例List。
3. 使用案例:
4. 多 excel sheet 转不同List对象
代码 案例 如下 :
```
@RequestMapping(value = "/multiSheet/upload", method = RequestMethod.POST)
@ResponseBody
public Map uploadSubsidiaryBudgetCompilation(
@MultiSheetExcelFile(dataClasses = {SubsidiaryRecord.class, SubsidiaryDTO.class}) Object records)
throws IOException {
Map, List> uploadData = (Map, List>) records;
List subsidiaryRecordList =
uploadData.get(new Tuple2(0, SubsidiaryRecord.class));
List subsidiaryDTO =
uploadData.get(new Tuple2(1, SubsidiaryDTO.class));
Map result = new HashMap<>();
result.put("subsidiaryRecordList", subsidiaryRecordList);
result.put("subsidiaryDTO", subsidiaryDTO);
return result;
}
```
4. @ExcelCol 支持 必填,文件格式以及排序等小功能。
3. ExcelColMap 支持传输kv 格式的Map下载excel 以支持自定义表单 excel下载
#### 参与贡献
1. Fork 本仓库
2. 新建 Feat_xxx 分支
3. 提交代码
4. 新建 Pull Request
#### 码云特技
1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md
2. 码云官方博客 [blog.gitee.com](https://blog.gitee.com)
3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解码云上的优秀开源项目
4. [GVP](https://gitee.com/gvp) 全称是码云最有价值开源项目,是码云综合评定出的优秀开源项目
5. 码云官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help)
6. 码云封面人物是一档用来展示码云会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)