www.dextsolution.com
DEXTUPLOAD
JK
menu toggleリファレンス > dextuploadjk > support > spring > JKDirectoryToZipDownloadView

dextuploadjk.support.spring
Class JKDirectoryToZipDownloadView

最小サポートバージョン
1.0.0
最小サポート環境
Java 17, Spring Framework 6.0.14, Spring Boot 3.0.12
説明

指定されたディレクトリを一つのzipファイルで囲み、ダウンロードを実行するビュークラスである。

@RequestMapping(value = "download-zip", method = RequestMethod.GET)
public ModelAndView downloadZip(...) {
    String targetDirPath = new File("/src/test/resources/compress/").getAbsolutePath();
			
    JKDirectoryToZipDownloadView view = new JKDirectoryToZipDownloadView();
			
    view.setTargetDirPath(targetDirPath);
    view.setIncludeTargetDirName(true);
    view.setCharsetName("UTF-8");
			
    return new ModelAndView(view);
}

JKDirectoryToZipDownloadView ビューを使用すると、ターゲットディレクトリを圧縮した後、すぐにダウンロードを実行する。

ダウンロードが完了すると、内部的に圧縮ファイルを直接削除し、圧縮ダウンロードはpartial contentダウンロードをサポートしていない。

圧縮されたファイルを削除せずに再利用するには、 JKDirectoryToZipDownloadViewビュークラスではなく、CompressUtilクラスを直接使用して圧縮ファイルを生成した後、 JKFileDownloadView クラスを使用してダウンロードする必要があります。

@RequestMapping(value = "download-zip", method = RequestMethod.GET)
public ModelAndView downloadZip(...) {

    // CompressUtilを使用して圧縮ファイルを生成する。
    CompressUtil zipper = new CompressUtil();
    File zipped = zipper.zip("/src/test/resources/compress/", true, "/tmp", "UTF-8", false, true);
		
    // ファイルをダウンロードするためにJKFileDownloadView オブジェクトを生成する。
    JKFileDownloadView view = new JKFileDownloadView();
    
    view.setFile(zipped);
    view.setFilename("directory.zip");
    view.setMime("application/x-zip-compressed");
    view.setUseClientCache(false);
    view.setCharsetName("UTF-8");
    
    return new ModelAndView(view);
}
コンストラクタ

JKDirectoryToZipDownloadView

  • JKDirectoryToZipDownloadView クラスのオブジェクトを生成する。

  • 形式

    public JKDirectoryToZipDownloadView()
    public JKDirectoryToZipDownloadView(String targetDirPath)
    public JKDirectoryToZipDownloadView(String targetDirPath, String filename)
    
  • パラメータ

    名前 形式 説明
    targetDirPath java.lang.String 圧縮するディレクトリを指すパス
    filename java.lang.String クライアントがダウンロードファイル名
メソッド

getTargetDirPath

  • 圧縮するディレクトリを指すパスを返します。

  • 形式

    public String getTargetDirPath()
  • リターン

    圧縮するディレクトリを指すパス

setTargetDirPath

  • 圧縮するファイルのリストを指すjava.util.Listオブジェクトを設定する。

  • 形式

    public void setTargetDirPath(String targetDirPath)
  • パラメータ

    名前 形式 説明
    targetDirPath java.lang.String 圧縮するディレクトリを指すパス

isIncludeTargetDirName

  • 圧縮したときに、ルートディレクトリを含めるかどうかを返します。

  • 形式

    public boolean isIncludeTargetDirName()
  • リターン

    圧縮したときに、ルートディレクトリを含めるかどうか

setIncludeTargetDirName

  • 圧縮したときに、ルートディレクトリを含めるかどうかを設定する。

  • 形式

    public void setIncludeTargetDirName(boolean includeTargetDirName)
  • パラメータ

    名前 形式 説明
    includeTargetDirName boolean パラメータの値がtrueの場合、ターゲットディレクトリまで圧縮する。

getTempZipRepositoryPath

  • zipファイルが作成される一時ディレクトリを表すパスを返します。

  • 形式

    public String getTempZipRepositoryPath()
  • リターン

    zipファイルが作成される一時ディレクトリを示すパス

setTempZipRepositoryPath

  • zipファイルが作成される一時ディレクトリを表すパスを設定する。

  • 形式

    public void setTempZipRepositoryPath(String tempZipRepositoryPath)
  • パラメータ

    名前 形式 説明
    tempZipRepositoryPath java.lang.String 一時ディレクトリを示すパス

getZipCharsetName

  • 多言語を使用するファイル名をエンコードする過程で使用する文字セット名前を返します。

  • 形式

    public String getZipCharsetName()
  • リターン

    多言語を使用するファイル名をエンコードする過程で使用する文字セット名前

setZipCharsetName

  • 多言語を使用するファイル名をエンコードする過程で使用する文字セット名前を設定する

  • 形式

    public void setZipCharsetName(String zipCharsetName)
  • パラメータ

    名前 形式 説明
    zipCharsetName java.lang.String 多言語を使用するファイル名をエンコードする過程で使用する文字セット名前

isIncludeHiddenFile

  • 圧縮するとき、隠しファイルも圧縮するかどうかを返します。

  • 形式

    public boolean isIncludeHiddenFile()
  • リターン

    trueまたはfalse

setIncludeHiddenFile

  • 圧縮するとき、隠しファイルも圧縮するかどうかを設定する。

  • 形式

    public void setIncludeHiddenFile(boolean includeHiddenFile)
  • パラメータ

    名前 形式 説明
    includeHiddenFile boolean パラメータの値がtrueの場合、隠しファイルも圧縮対象となる。

getFile

JKFileDownloadView クラスのgetFileメソッドを参照すること。

setFile

JKFileDownloadView クラスのsetFileメソッドを参照すること。

isAllowingWeakRange

JKFileDownloadView クラスのisAllowingWeakRangeメソッドを参照すること。

setAllowingWeakRange

JKFileDownloadView クラスのsetAllowingWeakRangeメソッドを参照すること。

isUseClientCache

JKFileDownloadView クラスのisUseClientCacheメソッドを参照すること。

setUseClientCache

JKFileDownloadView クラスのsetUseClientCacheメソッドを参照すること。

isRemoveAfterDownloading

JKFileDownloadView クラスのisRemoveAfterDownloadingメソッドを参照すること。

setRemoveAfterDownloading

JKFileDownloadView クラスのsetRemoveAfterDownloadingメソッドを参照すること。

getUseTomcatSendFile

JKFileDownloadView クラスのgetUseTomcatSendFileメソッドを参照すること。

setUseTomcatSendFile

JKFileDownloadView クラスのsetUseTomcatSendFileメソッドを参照すること。

doRenderImpl

JKAbstractDownloadableView 抽象クラスのdoRenderImplメソッドを参照すること。

getFilename

JKAbstractDownloadableView 抽象クラスのgetFilenameメソッドを参照すること。

setFilename

JKAbstractDownloadableView 抽象クラスのsetFilenameメソッドを参照すること。

getMime

JKAbstractDownloadableView 抽象クラスのgetMimeメソッドを参照すること。

setMime

JKAbstractDownloadableView 抽象クラスのsetMimeメソッドを参照すること。

isInline

JKAbstractDownloadableView 抽象クラスのisInlineメソッドを参照すること。

setInline

JKAbstractDownloadableView 抽象クラスのsetInlineメソッドを参照すること。

getCharsetName

JKAbstractDownloadableView 抽象クラスのgetCharsetNameメソッドを参照すること。

setCharsetName

JKAbstractDownloadableView 抽象クラスのsetCharsetNameメソッドを参照すること。

getDownloadStreamBufferSize

JKAbstractDownloadableView 抽象クラスのgetDownloadStreamBufferSizeメソッドを参照すること。

setDownloadStreamBufferSize

JKAbstractDownloadableView 抽象クラスのsetDownloadStreamBufferSizeメソッドを参照すること。

getContentDisposition

JKAbstractDownloadableView 抽象クラスのgetContentDispositionメソッドを参照してください。

setContentDisposition

JKAbstractDownloadableView 抽象クラスのsetContentDispositionメソッドを参照してください。