跳到主要内容

Excel 导入导出

返回文档导航


配合 EasyExcel,使用 @SetValueBeanUtil 处理扁平 Bean 与嵌套 JSON 的转换。

示例

@Data
public class UserExcel {
@ExcelProperty("姓名")
private String name;

@ExcelProperty("手机号")
@SetValue("profile")
private String phone;

@ExcelProperty("地址")
@SetValue("profile")
private String address;
}

// 导入:Excel → 嵌套 JSON → 数据库
List<UserExcel> excelList = EasyExcel.read(file).sheet().doReadSync();
for (UserExcel excel : excelList) {
JSONMap json = new JSONMap();
BeanUtil.copyAsSource(excel, json, true);
User user = json.as(User.class);
userService.save(user);
}

// 导出:数据库 → 嵌套 JSON → 扁平 Excel
List<User> users = userService.list();
List<UserExcel> excelList = new ArrayList<>();
for (User user : users) {
JSONMap json = new JSONMap(user);
UserExcel excel = new UserExcel();
BeanUtil.copyAsTarget(json, excel);
excelList.add(excel);
}
EasyExcel.write(file, UserExcel.class).sheet().doWrite(excelList);

上一节:数据库JSON字段 | 返回文档导航 | 下一节:实际案例集 →