添加自定义校验规则需要继承IExcelVerifyHandler,然后给importParam设置这个校验器
@Component
public class AppImportVerify implements IExcelVerifyHandler<AutAppB> {
@Autowired
private IAutAppBService autAppBServiceImpl;
@Override
public ExcelVerifyHandlerResult verifyHandler(AutAppB autAppB) {
ExcelVerifyHandlerResult result = new ExcelVerifyHandlerResult();
//假设我们要添加用户,
//现在去数据库查询loginName,如果存在则表示校验不通过。
//假设现在数据库中有个loginName 1234560
AutAppB byId = autAppBServiceImpl.getById(autAppB.getAppId().toString());
if (byId!=null) {
result.setMsg("唯一校验失败");
result.setSuccess(false);
return result;
}
result.setSuccess(true);
return result;
}
}
注意:如果使用spring的话,需要注入自定义的校验器,不能通过new
@Autowired
private AppImportVerify appImportVerify;
MultipartFile file2 = multipartRequest.getFile("file");
ImportParams importParams = new ImportParams();
//开启校验
importParams.setNeedVerfiy(true);
importParams.setHeadRows(1);
//如果用spring,这里要注入
importParams.setVerifyHandler(appImportVerify);