将文件写入 ServletOutputStream 的最有效方法
2022-09-03 03:48:46
ServletOutputStream output = response.getOutputStream();
output.write(byte[]);
将File写入javax.servlet.ServletOutputStream的最有效方法是什么?
编辑:
如果使用NIO,这不是更有效吗?
ServletOutputStream output = response.getOutputStream();
output.write(byte[]);
将File写入javax.servlet.ServletOutputStream的最有效方法是什么?
编辑:
如果使用NIO,这不是更有效吗?
IOUtils.copy(in, out);
out.flush();
//...........
out.close(); // depends on your application
其中 是 FileInputStream,是 .IOUtils是Apache Commons中Commons IO模块的实用程序。in
out
SocketOutputStream
你有一个ServletOutputStream。您可以写入的唯一方法是通过 java.io.*。您根本不能在其上使用NIO(除了通过包装,这是毫无意义的:它仍然是一个下面,你只是在顶部添加处理)。实际的 I/O 是网络绑定的,并且您的写入操作无论如何都会被 servlet 容器缓冲(以便它可以设置 Content-Length)标头,因此在此处查找性能调整是毫无意义的。Channels
OutputStream