java - 为什么 HttpStaticFileServer 的 netty 示例使用 RandomAccessFile?

标签 java http netty

netty有没有什么具体原因HttpStaticFileServerHandler使用 RandomAccessFile 的示例?

最佳答案

我认为这样他们可以演示 ChunkedFile 的使用,这需要一个 RandomAccessFile。原因似乎是 ChunkedFile 需要能够获取文件的长度。


If I am not using https, I need not use ChunkedFile. So I can choose FileInputStream instead of RandomAccessFile which also returns a FileChannel. But I cannot get fileLength from FileInputStream which is a required input for DefaultFileRegion. So I think it is necessary to use RandomAccessFile.

大体上是正确的。但是,您可能会通过其他方式获得文件长度;例如使用 File.length()

实际上,获取 FileChannel 和文件长度的方式并没有太大区别。

关于java - 为什么 HttpStaticFileServer 的 netty 示例使用 RandomAccessFile?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17857592/

相关文章:

java - 如何有效匹配各种选项的结果字符串?

Python HTTP POST 请求发送两次

javascript - 在 JavaScript 中将 HTTP 响应保存为字符串

java - 如何使用 https 配置 jhipster

java - Netty 示例中 ctx.read() 与 ctx.channel.read() 的使用

java - 这个Netty UDP模型真的是多线程的吗?

Java:比 String(byte[]) 更快的替代品

java - IDEA : javac: source release 1. 7 需要目标版本 1.7

java - hibernate 不关闭连接

java - Graphics.drawRect 没有完全绘制矩形?