欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Javaweb实训第十一天 下载和ajax

程序员文章站 2024-03-25 20:04:34
...

下载

**

静态下载

地址指向下载的文件然后另存为

动态下载

1.地址指向下载的文件
2.在要下载的文件中通知浏览器这是一个需要下载的文件,不能再以普通的html格式打开了
(下载的响应格式是:application/x-msdownload)
例如:<% response.setContentType(“application/x-msdownload”);%>
3.通知浏览器不再由浏览器来直接处理和打开该文件,而是由用户自己处理
(设置用户处理的方式:Content-Disposition)
例如:<%response.setHeader(“Content-Disposition”,“attachment;filename=abc.txt”);%>

本地下载

1.设置响应类型,告诉浏览器这是一个下载文件
response.setContentType(“application/x-msdownload”);
response.setHeader(“Content-Disposition”,“attachment;filename=abc.txt”);
2.创建输出流
OutputStream out = response.getOutputStream();
3.文件地址
String filename=“C:\Users\Public\Pictures\Sample Pictures\菊花.jpg”;
4.创建输入流
InputStream in = new FileInputStream(filename);
5.创建一个byte字节流的数组
byte[] bytes = new byte[1024];
int len = 0;
//read():读取文件的一个字节,当执行到文件结尾时返回-1
while(len=in.read(bytes)) !=-1){
//输出
out.write(bytes,0,len);
}

ajax

//验证用户名是否存在
function check() {
//获取用户输入的用户名
var userName=$("#username").val();
//向服务发送请求
KaTeX parse error: Expected '}', got 'EOF' at end of input: … url:"{pageContext.request.contextPath}/regServlet",

            //2.请求类型
            type:"POST",

            //3.请求参数
            data:{"name":userName},

            //4.指定传输的类型
            dataType:"json",

            //5.获取服务响应结果
            success:function (data) {//回调函数
                if(data.result==1){
                    $("#errorInfo").text(data.info)
                }else{
                    $("#errorInfo").text(data.info)
                }
            }

        })

    }
//servlet内部
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        response.setContentType("application/json;charset=utf-8");
        PrintWriter out=response.getWriter();
        //获取请求参数
        String name=request.getParameter("name");
        if(name.equals("admin")){
            //{"result":"1","info":"用户名已存在"}
            out.write("{\"result\":\"1\",\"info\":\"用户名已存在\"}");

        }else{
            out.write("{\"result\":\"0\",\"info\":\"√\"}");
        }

    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doPost(request,response);
    }

相关标签: ajax java