在我的 JSP 中,我当前使用 JSTL 来显示驻留在服务器上的简单文本文件的内容,如下所示:
c:import url="http://www.mysite.com/texts/name_id.txt"charEncoding="UTF-8"/>
这些文本文件可能很长并且数量很多,因此我想压缩它们并将压缩版本提供给导入标记。您能给我一些关于如何修改 JSTL 导入标记的建议,或者创建我自己的标记,以在压缩文本文件时达到相同的结果吗?我怀疑我应该使用 Apache Commons Codec,或者 java.util.zip 就足够了吗?
供您引用,JSTL 1.2 导入标记的源代码可以在以下位置查看:
问候
最佳答案
创建一个映射到 /texts/*
URL 模式的 Servlet,并在 doGet()
中大致完成以下工作。
String path = request.getRequestURI().substring(request.getContextPath().length());
InputStream input = new GzipInputStream(getServletContext().getResourceAsStream(path));
OutputStream output = response.getOutputStream();
// Write input to output.
请注意,该 URL 是基于您的问题的,并且您可以通过这种方式保持 JSP 中的 URL 不变。
关于java - 修改 JSTL 导入标记以在 JSP 中显示 gzip 压缩文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5622618/