2016-08-13 3 views
1

문서에서 사용자 컴퓨터에 파일을 다운로드하는 "다운로드 파일"섹션을 읽었습니다. 그것이 FileDescriptor를 가진 CreateExportDisplay에 기반하고 있기 때문에, 제 문제는 blob 필드에 데이터베이스에 파일을 저장했고, 데이터베이스에서 사용자의 컴퓨터로 파일을 다운로드하고 싶습니다. CreateExportDisplay에 구현이 있습니까?CreateExportDisplay를 사용하여 데이터베이스에서 파일 다운로드

답변

1

당신은 ExportDataProvider의 표준 구현을 사용할 수 있습니다 - 즉, 바이트 배열을 제공 ByteArrayDataProvider :

public class BlobFileBrowse extends AbstractLookup { 
    @Inject 
    protected Table<BlobFile> blobFilesTable; 

    @Inject 
    protected ExportDisplay exportDisplay; 

    public void downloadContent() { 
     BlobFile blobFile = blobFilesTable.getSingleSelected(); 

     exportDisplay.show(new ByteArrayDataProvider(blobFile.getContent()), 
       "my-blob.dat", ExportFormat.OCTET_STREAM); 
    } 
} 

또한 당신은 당신의 자신의 ExportDataProvider를 구현하고 ExportDisplay로 사용할 수 있습니다.