上传后删除文件

时间:2016-05-03 11:10:21

标签: java nio

我想实现从网页到数据库的文件上传。我需要创建一些临时文件,用于将文件从网页传输到数据库。我发现了这个Java示例;

    public void copyFileLocation() throws IOException {

        File temp = File.createTempFile("temp-file-name", ".tmp");

    }

成功复制后有没有办法自动删除文件?这个代码平台也是独立的吗?我需要在tmp文件夹中的不同平台上创建tanpolary文件。

1 个答案:

答案 0 :(得分:0)

将上传的数据立即存储在数据库中,假设列类型为BLOB。

try (PreparedStatement stmt = connection.prepareStatement(
        "INSERT INTO files(blob) VALUES(?)");

    // Either:
    InputStream in = ... uploaded file
    // or:
    byte[] data = ... uploaded file contents
    ByteArrayInputStream in = new ByteArrayInputStream(data);

    stmt.setBinaryStream(1, in);
    stmt.executeUpdate();
}

(有几种上传解决方案。)

优点是铲除的工作少了。