request和response学习

response: 对应服务器的响应(HttpServletResponse),这个对象封装了向客户端发送数据,发送响应头,发送响应状态码的方法

response.setHeader("Content-type","text/html;charset=UTF-8");//通过头来控制浏览器以什么码表打开

1. response实现文件下载(在Servlet中用ServletContext来写,在普通JAVA程序中用类装载器来装载资源): 

doGet(request, response)

{

String path = this.getServletContext().getRealPath("/download/tt.jpg");

String filename = path.substring(path.lastIndexOf("\\") + 1);

//如果下载文件是中文文件,则文件名需要经过url编码 URLEncoder.encode(filename,"UTF-8");

response.setHeader("content-disposition","attachment;filename=" + filename);

InputStream in = null;

OutputStream out = null;

try

{

in = new FileInputStream(path);

int len = 0;

byte buffer[] = new byte[1024];

out = response.getOutputStream();

while((len = in.read(buffer)) > 0)

{

out.write(buffer,0,len);

}

}finally{

if (in != null)

{

try{ in.close();} catch(Exception e){e.printStackTrace();}

}

}

}


2. 输出随机图片(防止机器人注册)

你可能感兴趣的:(request和response学习)