jsp页面怎么传文件路径形式的字符串给servlet,然后使servlet用浏览器下载这个文件路径字符串指向的文件到客户端?
我写了一下相关的代码,在hsp页面端点击一个按钮,该按钮的点击事件执行时,通过ajax把文件名传到servlet,servlet没有报异常,但是浏览器就不弹出下载文件提示。这个要怎么解决。正确的代码是什么
$("#btn").click(function() {
$.ajax({
type: "GET",
url: "http://127.0.0.1:8080/javaWebDome/DownloadFileServlet",
data: "downFile="+"1.txt",
success: function(data,text,jqHR){
},
error: function(data,text,jqHR)
{
alert("错误");
},
})
});
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String fileName=request.getParameter("downFile");
System.out.println(fileName); //这里能输出
response.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
request.setCharacterEncoding("UTF-8");
PrintWriter out = response.getWriter();
response.setContentType("APPLICATION/OCTET-STREAM");
String dowmName="下载"+fileName.substring(fileName.lastIndexOf("."));
response.setHeader("Content-Disposition", "attachment; filename=\""+new String(dowmName.getBytes("utf-8"),"ISO-8859-1")+"\"");
FileInputStream fileInputStream = new FileInputStream("f:/aaa/"+fileName);
int i = 0;
while ((i = fileInputStream.read()) != -1) {
out.write(i);
}
fileInputStream.close();
out.close();
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request,response);
}
...全文
相关推荐
servlet如何将对象传给JSP,看完必懂
在IT领域,特别是Web开发中,Servlet与JSP之间的数据传递是实现动态网页的重要机制之一。根据提供的文件信息,我们可以深入解析servlet如何将对象传给JSP的关键知识点。
浅谈JSP与Servlet传值及对比(总结)
**表单传值**: 当用户在JSP页面上填写表单并提交时,数据通过HTTP请求发送到Servlet。
jsp页面之间的传值
### JSP页面之间的传值详解#### 一、引言在Web开发中,数据的传递是一项基础且重要的任务。
在JSP页面内编写java代码方法总结
表达式(Expression)表达式用于将Java表达式的值转换成字符串,并插入到响应返回给客户端的内容中。表达式两边的等号`=`是必需的。
js+jsp+servlet实现网页局部刷新
例如,在`majorSearch.action`和`classSearch.action`这两个Servlet中,我们需要查询数据库获取对应的专业和班级信息,并将其格式化为逗号分隔的字符串形式返回给前端


