我认为这很有可能,但我不确定。
我没有直接使用servlet的可能,所以我不得不使用JSP(历史悠久,时间短,你不想听)
所以我认为类似以下的事情会做:
// PSEUDO-CODE:
// source.jsp
Download your file
<a href="file.jsp?xyz">MyDocument.doc</a>
// file.jsp
<%@page content-type="applicaton/somethig-binary-xyz"%>
byte[] data = getBinaryFromSomeWhere();
int start = 0;
int end = data.length < 1024 ? data.length : 1024;
int written = 0;
while( written < data.length ) {
out.write( data, start, end );
writtern += end;
start = end;
end += written + data.length < 1024 ? data.length : 1024;
}
%>
不要过多关注代码。它只显示了这个想法。它将二元数组写入 jsp 输出流。
是否可以?听起来合理吗?是否有 JSTL 或其他已经处理过的东西?