我有一个 servlet,当用户按下一个按钮时,它会生成一个动态 pdf(根据用户给定的数据)并将其下载到用户的 c:/ 位置。有人可以帮我怎么做吗?
问问题
2789 次
2 回答
4
你到底有什么不清楚的地方?如何编写一个html表单?如何从 HttpServletRequest 中获取参数?或者如何生成pdf并下载给用户?
<form action="yourServlet">
<input type="text" name="sometxt"/>
<input type="secret" name="passwd"/>
<input type="submit"/>
</form>
然后,您可以在 getXXX 方法中检索它,例如
final String text = request.getParameter("sometxt");
final String rawPassword = request.getParameter("secret");
如果您需要渲染 pdf,您应该查看 Apache PdfBox。
最后,如果您无法将文件下载给用户:
response.setContentType("application/pdf");
InputStream in = ... // depends where you store your file
ServletOutputStream out = response.getOutputStream();
byte[] buffer = new byte[4096];
while(in.read(buffer, 0, 4096) != -1)
out.write(buffer, 0, 4096);
in.close();
out.flush();
out.close();
并且不要忘记处理 IOException,我出于简单的目的而错过了它。
于 2012-06-11T14:52:28.153 回答