JAVA使用EasyExcel数据库动态导出Excel,超简朴!

打印 上一主题 下一主题

主题 521|帖子 521|积分 1563

demo代码,拿来即用

//保存路径与名字
private final static String fileName = “E:\” + System.currentTimeMillis() + “.xlsx”;
@Test
// public static void easyUtil(List heads,String head,List<Map<String, Object>> list){
public void easyUtil(){
List heads = new ArrayList<>(); //表头信息
heads.add(“银行名称”);
heads.add(“期间新增项目”);
heads.add(“期间新增担保总额”);
heads.add(“期间新增解保项目数”);
heads.add(“期间新增解保金额”);
heads.add(“在保项目数”);
heads.add(“在保余额”);
heads.add(“银行利率”);
String head=“惠农通数据表”; //主表头
List<Map<String, Object>> list = new ArrayList<>();
Map<String,Object> test = new LinkedHashMap<>(); //手动添加测试数据(可根据必要从数据库查询)
test.put(“t1”, 1);
test.put(“t2”, 2);
test.put(“t3”, 3);
test.put(“t4”, 4);
test.put(“t5”, 5);
test.put(“t6”, 6);
test.put(“t7”, 7);
test.put(“t8”, 8);
list.add(test);
Map<String,Object> test2 = new LinkedHashMap<>();
test.put(“t1”, 1);
test.put(“t2”, 2);
test.put(“t3”, 3);
test.put(“t4”, 4);
test.put(“t5”, 5);
test.put(“t6”, 6);
test.put(“t7”, 7);
test.put(“t8”, 8);
list.add(test2);
List objects = new ArrayList<>();
List<List> hs = new ArrayList<>();
for (String s : heads) {
hs.add(Arrays.asList(head,s));
}
// List<Map<String, Object>> l = new ArrayList<>();
Collection values;
List<List> list2 = new ArrayList<>();
for (int i = 0; i < list.size(); i++) {
values = list.get(i).values();
for (Object value : values) {
objects.add(value.toString());
}
list2.add(objects);
}
EasyExcel.write(fileName).head(hs).sheet(“模板”).doWrite(list2);
System.out.println(“导出成功”);
}
工具类方法如下。拿来即用

//保存路径与名字(也可以放进工具类,通过参数通报)
private final static String fileName = “E:\” + System.currentTimeMillis() + “.xlsx”;
/**


  • 简易版动态导出
  • @param heads 表头
  • @param head 主表头
  • @param list 表数据
*/
@Test
public static void easyUtil(List heads,String head,List<Map<String, Object>> list){
// public void easyUtil(){
List objects = new ArrayList<>();
List<List> hs = new ArrayList<>();
for (String s : heads) {
hs.add(Arrays.asList(head,s));
}
// List<Map<String, Object>> l = new ArrayList<>();
Collection values;
List<List> list2 = new ArrayList<>();
for (int i = 0; i < list.size(); i++) {
values = list.get(i).values();
for (Object value : values) {
objects.add(value.toString());
}
list2.add(objects);
}
EasyExcel.write(fileName).head(hs).sheet(“模板(sheet名字)”).doWrite(list2);
System.out.println(“导出成功”);
}
工具类测试demo
============================================================================
package excel;
import com.alibaba.excel.EasyExcel;
import java.util.*;
/**


  • @author xu
  • @Description
  • @createTime 2021年05月06日 11:45:00
*/
public class test {
public static void main(String[] args) {
List heads = new ArrayList<>(); //表头信息
heads.add(“银行名称”);
heads.add(“期间新增项目”);
heads.add(“期间新增担保总额”);
heads.add(“期间新增解保项目数”);
heads.add(“期间新增解保金额”);
heads.add(“在保项目数”);
heads.add(“在保余额”);
heads.add(“银行利率”);
String head=“惠农通数据表”; //主表头
List<Map<String, Object>> list = new ArrayList<>();
Map<String,Object> test = new LinkedHashMap<>(); //手动添加测试数据(可根据必要从数据库查询)
test.put(“t1”, 1);
test.put(“t2”, 2);
test.put(“t3”, 3);
test.put(“t4”, 4);
test.put(“t5”, 5);
test.put(“t6”, 6);
test.put(“t7”, 7);
test.put(“t8”, 8);
list.add(test);
Map<String,Object> test2 = new LinkedHashMap<>();
test.put(“t1”, 1);
test.put(“t2”, 2);
test.put(“t3”, 3);
test.put(“t4”, 4);
test.put(“t5”, 5);
test.put(“t6”, 6);
自我介绍一下,小编13年上海交大结业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,每每是自己摸索发展大概是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技能停滞不前!
因此网络整理了一份《2024年Java开辟全套学习资料》,初志也很简朴,就是希望能够资助到想自学提升又不知道该从何学起的朋侪,同时减轻大家的负担。



既有得当小白学习的零底子资料,也有得当3年以上履历的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开辟知识点,真正体系化!
由于文件比力大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会连续更新!
如果你觉得这些内容对你有资助,可以扫码获取!!(备注Java获取)
总结

机会是留给有预备的人,大家在求职之前应该要明确自己的态度,认识求职流程,做好充分的预备,把一些可预见的事情做好。
对于应届结业生来说,校招更得当你们,因为绝大部分都不会有工作履历,企业也不会有工作履历的需求。同时,你也不必要伪造高大上的实战履历,以此让自己的简历能够脱颖而出,反倒会让口试官有所怀疑。
你在大学时期应该明确自己的发展方向,如果你在大一就确定你以后想成为Java工程师,那就不要花太多的时间去学习其他的技能语言,高数之类的,不如好好想着怎样夯实Java底子。下图涵盖了应届生乃至转行过来的小白要学习的Java内容:
请转发本文支持一下


《互联网大厂口试真题剖析、进阶开辟核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
该明确自己的发展方向,如果你在大一就确定你以后想成为Java工程师,那就不要花太多的时间去学习其他的技能语言,高数之类的,不如好好想着怎样夯实Java底子。下图涵盖了应届生乃至转行过来的小白要学习的Java内容:
请转发本文支持一下
[外链图片转存中…(img-jP1tZa2H-1713289459875)]
[外链图片转存中…(img-LoXnSekN-1713289459875)]
《互联网大厂口试真题剖析、进阶开辟核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

伤心客

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表