目前见过最方便的导入/导出excel的方法,直接上代码。
pom引用:
<dependency>
<groupId>com.pig4cloud.excel</groupId>
<artifactId>excel-spring-boot-starter</artifactId>
<version>0.4.1</version>
</dependency>
定义实体类:
@Data
public class DemoData {
@ColumnWidth(50) // 定义宽度
@ExcelProperty("用户名") // 定义列名称
@HeadStyle(fillForegroundColor = 23)
@ContentStyle(fillPatternType = FillPatternType.SOLID_FOREGROUND, fillForegroundColor = 40)
private String username;
@ExcelProperty("密码")
private String password;
}
excel解析、导出:
@RestController
public class ExcelController {
/**
* 类似于 @RequestParam("excel") MultipartFile file
*
* @param dataList
*/
@PostMapping("/upload")
public void upload(@RequestExcel List<DemoData> dataList) {
System.out.println(JSONUtil.toJsonStr(dataList));
}
@ResponseExcel(name = "lengleng", sheet = "demoList")
@GetMapping("/e1")
public List<DemoData> e1() {
List<DemoData> dataList = new ArrayList<>();
for (int i = 0; i < 100; i++) {
DemoData data = new DemoData();
data.setUsername("tr1" + i);
data.setPassword("tr2" + i);
dataList.add(data);
}
return dataList;
}
}