我有如下要求:
这是针对批量上传数据,我逐行读取文件,查找行是否有有效数据,并且根据传递的密钥行不重复,最后返回有效行列表.
abstract class BulkUploadService {
List<BulkDTO> process(File file) {
// Read a file and the value from below methods overridden by their child classes
}
abstract CellProcessors[] cellProcessors();
abstract boolean isDuplicatesAllowed();
abstract String[] headers();
abstract String rowKey();
}
Run Code Online (Sandbox Code Playgroud)
方法process()需要 - File,Row key,CellProcessors,boolean来接受/拒绝重复项,还有更多来处理和返回DTO形式的有效行列表.子类将实现BulkUploadService并覆盖除process()之外的所有方法,以便为process()方法提供数据以返回有效列表.
我想抽象出来的原因是它BulkUploadService应该处理所有业务逻辑并返回具体类的有效列表,具体类应该只关注提供信息.有没有更好的方法来设计这种情况?