FileCopyUtils或IOUtils

时间:2016-05-13 17:40:20

标签: java spring spring-mvc

长话短说

  

Spring FileCopyUtils.copy()IOUtils.copy()之间有什么区别?   Apache Commons' InputStream

全文

最近,在使用SpringMVC 4开发Web应用程序时,我不得不实现一个将文件发送到用户浏览器的控制器。我正在访问该文件,并通过调用HttpServletResponse.getOutputStream()创建一个重定向的FileCopyUtils.copy(inputstream, outputstream)。我发现了两种将输入流复制到输出流的方法,一种是使用Spring的IOUtils.copy(inputstream, outputstream),另一种是使用Apache Common的# creating the database type execute("create type post_status as enum ('published', 'editing')") # creating a table with the column create table(:posts) do add :post_status, :post_status, null: false end (或largeCopy()用于文件超过2GB)。

两个类/方法之间是否存在真正的差异?据我所知,Javadocs只是将输入流复制到输出而不需要手动关闭。

1 个答案:

答案 0 :(得分:1)

如果比较源代码,它们几乎完全相同,只是Spring完成后会在输出流上调用flush()