ExcelUtils.java 3.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. package com.izouma.nineth.utils.excel;
  2. import com.alibaba.excel.EasyExcel;
  3. import com.izouma.nineth.utils.MetaTaskTargetConverter;
  4. import javax.servlet.http.HttpServletResponse;
  5. import java.io.IOException;
  6. import java.util.List;
  7. public class ExcelUtils<T> {
  8. public static <T> void export(HttpServletResponse response, List<T> data) throws IOException {
  9. String fileName = "data.xlsx";
  10. if (data != null && !data.isEmpty()) {
  11. fileName = data.get(0).getClass().getSimpleName() + ".xlsx";
  12. }
  13. response.setContentType("application/vnd.ms-excel");
  14. response.setCharacterEncoding("utf-8");
  15. response.setHeader("Content-Disposition", "attachment;filename=" + fileName);
  16. EasyExcel.write(response.getOutputStream(), data.get(0).getClass()).sheet("sheet")
  17. .registerConverter(new LocalDateConverter())
  18. .registerConverter(new LocalDateTimeConverter())
  19. .registerConverter(new BigIntegerConverter())
  20. .registerConverter(new AuthStatusConverter())
  21. .registerConverter(new OrderStatusConverter())
  22. .registerConverter(new PayMethodConverter())
  23. .registerConverter(new MetaTaskTypeConverter())
  24. .registerConverter(new MetaTaskTypeConverter())
  25. .registerConverter(new MetaTaskStatusConverter())
  26. .registerConverter(new CoordinateDTOConverter())
  27. .registerConverter(new EntryModelTypeConverter())
  28. .registerConverter(new GameCopyTypeConverter())
  29. .registerConverter(new MetaGameAwardExcelConverter())
  30. .registerConverter(new MetaGameConverter())
  31. .registerConverter(new MetaItemEnumConverter())
  32. .registerConverter(new MetaRegionEnumConverter())
  33. .registerConverter(new MetaZombieTypeConverter())
  34. .registerConverter(new MetaZombieDTOConverter())
  35. .registerConverter(new MintActivityRuleConverter())
  36. .registerConverter(new ListConverter())
  37. .registerConverter(new OperationSourceConverter())
  38. .registerConverter(new RecordTypeConverter())
  39. .registerConverter(new MetaIsLandTypeEnumConverter())
  40. .registerConverter(new MoveTypeConverter())
  41. .registerConverter(new MetaAwardTypeEnumConverter())
  42. .registerConverter(new MetaPurchaseMethodEnumConverter())
  43. .registerConverter(new MetaTaskTargetConverter())
  44. .registerConverter(new MetaStoreCommodityTypeConverter())
  45. .registerConverter(new MetaResourcesTypeConverter())
  46. .registerConverter(new ChatTypeConverter())
  47. .registerConverter(new MetaSwitchTypeConverter())
  48. .registerConverter(new MetaPropTypeConverter())
  49. .registerConverter(new MetaLuckyDrawAwardModelConverter())
  50. .registerConverter(new MetaPropTriggerTypeConverter())
  51. .registerConverter(new MetaPropUsedTypeConverter())
  52. .registerConverter(new WithdrawStatusConverter())
  53. .doWrite(data);
  54. }
  55. }