引入pom
<dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>2.2.6</version>
</dependency>
运用
import com.alibaba.excel.EasyExcel;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;import javax.servlet.http.HttpServletResponse;
import java.net.URLEncoder;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;@Controller
@RequestMapping("/easy/excel")
public class EasyExcelController {@GetMapping("/tttt")public void tttt(HttpServletResponse response) throws Exception{response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");response.setCharacterEncoding("utf-8");// 这里URLEncoder.encode可以防止中文乱码 当然和easyexcel没有关系String fileName = URLEncoder.encode("测试", "UTF-8").replaceAll("\\+", "%20");response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx");// 表头List<List<String>> heads = new ArrayList<List<String>>();List<String> head0 = new ArrayList<>();head0.add("字符id");List<String> head1 = new ArrayList<>();head1.add("合并1");head1.add("合并2");List<String> head2 = new ArrayList<>();head2.add("数量1");List<String> head3 = new ArrayList<>();head3.add("小数");List<String> head4 = new ArrayList<>();head4.add(" 时 间 ");heads.add(head0);heads.add(head1);heads.add(head2);heads.add(head3);heads.add(head4);List<List<Object>> rt = new ArrayList<List<Object>>();List<Object> row =new ArrayList<>();row.add("UID1");row.add("name1");row.add(7);row.add(1.2);row.add(new Date());rt.add(row);List<Object> row2 =new ArrayList<>();row2.add("UID2");row2.add("name2");row2.add(1);row2.add(3.4);row2.add(new Date());rt.add(row2);EasyExcel.write(response.getOutputStream()).head(heads).sheet("sheet名").doWrite(rt);}
}
官网API