The new Java project studies online notes -day14 (six)

2 My media assets 2.1 requirements analysis
through my media information can query the media information file of this educational institution owned, file handling, delete files, change file information and other operations, specific requirements are as follows:
1, paging query my media information file
2, delete the media information file 3, handle media information file
4, modify media information file information
The new Java project studies online notes -day14 (six)
2.2 API
this section explains my file paging query media information, media information processing document, other functions of your student self-fulfilling.

[mw_shl_code = applescript, true] @Api (value = " media file management", description = "Media File Management Interface", tags = { "Media File Management Interface"}) public interface MediaFileControllerApi {
@ApiOperation ( "QUERY FILE LIST" )
public QueryResponseResult FindList (Page int, int size, queryMediaFileRequest queryMediaFileRequest);
} [/ mw_shl_code]
2.3 server development
2.3.1 Dao


[mw_shl_code=applescript,true]@Repository public interface MediaFileDao 
extends MongoRepository<MediaFile,String> { 
  }[/mw_shl_code]
2.3.2  Service 
定义findList方法实现媒资文件查询列表。

[mw_shl_code=applescript,true]@Service public class MediaFileService {     
  private static Logger logger = LoggerFactory.getLogger(MediaFileService.class);   
    @Autowired   
  MediaFileRepository mediaFileRepository;   
    //文件列表分页查询  
   public QueryResponseResult findList(int page,int size,QueryMediaFileRequest
  queryMediaFileRequest){    
     //查询条件     
    MediaFile mediaFile = new MediaFile();     
    if(queryMediaFileRequest == null){    
         queryMediaFileRequest = new QueryMediaFileRequest();    
     }       
  //查询条件匹配器     
    ExampleMatcher matcher = ExampleMatcher.matching()    
             .withMatcher("tag", ExampleMatcher.GenericPropertyMatchers.conta×××())//tag字段 模糊匹配       
          .withMatcher("fileOriginalName",  ExampleMatcher.GenericPropertyMatchers.conta×××())//文件原始名称模糊匹配                 .withMatcher("processStatus", ExampleMatcher.GenericPropertyMatchers.exact());// 处理状态精确匹配(默认) 
        //查询条件对象       
  if(StringUtils.isNotEmpty(queryMediaFileRequest.getTag())){[/mw_shl_code]
[mw_shl_code=applescript,true]mediaFile.setTag(queryMediaFileRequest.getTag());    
     }    
     if(StringUtils.isNotEmpty(queryMediaFileRequest.getFileOriginalName())){             mediaFile.setFileOriginalName(queryMediaFileRequest.getFileOriginalName());   
      }      
   if(StringUtils.isNotEmpty(queryMediaFileRequest.getProcessStatus())){     
        mediaFile.setProcessStatus(queryMediaFileRequest.getProcessStatus());    
     }     
    //定义example实例  
       Example<MediaFile> ex = Example.of(mediaFile, matcher);   
        page = page‐1;    
     //分页参数   
      Pageable pageable = new PageRequest(page, size);  
       //分页查询       
  Page<MediaFile> all = mediaFileRepository.findAll(ex,pageable);   
      QueryResult<MediaFile> mediaFileQueryResult = new QueryResult<MediaFile>();     
    mediaFileQueryResult.setList(all.getContent());       
  mediaFileQueryResult.setTotal(all.getTotalElements()); 
        return new QueryResponseResult(CommonCode.SUCCESS,mediaFileQueryResult); 
    }   }
[/mw_shl_code]
2.3.3 Controller 
[mw_shl_code=applescript,true]@RestController @RequestMapping("/media/file") public class MediaFileController implements MediaFileControllerApi {       @Autowired 
    MediaFileService mediaFileService;   
  @Autowired    
MediaUploadService mediaUploadService;   
    @Override  
   @GetMapping("/list/{page}/{size}")  
   public QueryResponseResult findList(@PathVariable("page") int page, @PathVariable("size") 
int size, QueryMediaFileRequest queryMediaFileRequest) {      //媒资文件查询          
    return mediaFileService.findList(page,size,queryMediaFileRequest); 
    }  
   }[/mw_shl_code]

Guess you like

Origin blog.51cto.com/13517854/2409100