この内容は古いバージョンです。最新バージョンを表示するには、戻るボタンを押してください。
バージョン:1
ページ更新者:T
更新日時:2018-04-30 08:13:27

タイトル: CSVファイルダウンロード方法(Ajax)

本稿はJavaのSpring FrameworkにおいてAjaxを用いたCSVファイルのダウンロード方法を記載します。

 

HTML

<button id="download" type="submit">ダウンロード</button>

 

Javascript

$("#download").click(function() {
    $.ajax({
        method: 'post',
        url: 'csvDownload',

    }).done(function(data, status, jqXHR) {
        let downloadData = new Blob([data], {type: 'text/csv'});
        let filename = 'test.csv'

        let downloadUrl  = (window.URL || window.webkitURL).createObjectURL(downloadData);
        let link = document.createElement('a');
        link.href = downloadUrl;
        link.download = filename;
        link.click();
        (window.URL || window.webkitURL).revokeObjectURL(downloadUrl);

    });
}
);

 

Java

@RequestMapping("csvDownload")
public void csvDownload(HttpServletResponse response) {

    response.setContentType(MimeTypeUtils.APPLICATION_OCTET_STREAM_VALUE + ";charset=utf-8");
    response.setHeader("Content-Disposition", "attachment; filename=\"test.csv\"");

    try (PrintWriter printWriter = response.getWriter()) {

        String str = "a" + "," + "1" + "\r\n";

        printWriter.print(str);

    } catch (IOException e) {

        e.printStackTrace();

    }
}