响应头信息:
协议,状态码,header......
setHeader设置响应头信息
设置内容类型,如word,excel,txt等等
1.构建excel电子表格
代码如下:
- public void doGet(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- response.setContentType("application/vnd.ms-excel");
- PrintWriter out = response.getWriter();
- out.println("\tQ1\tQ2\tQ3\tQ4\tTotal");
- out.println("Apples\t78\t87\t92\t29\t=SUM(B2:E2)");
- out.println("Oranges\t77\t86\t93\t30\t=SUM(B3:E3)");
- }
- public void doPost(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- doGet(request,response);
- }
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("application/vnd.ms-excel");
PrintWriter out = response.getWriter();
out.println("\tQ1\tQ2\tQ3\tQ4\tTotal");
out.println("Apples\t78\t87\t92\t29\t=SUM(B2:E2)");
out.println("Oranges\t77\t86\t93\t30\t=SUM(B3:E3)");
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request,response);
}
2.动态生成jpeg图片
代码内容如下:
- public void doGet(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- //响应动态图片
- response.setContentType("image/jpeg"); //设置响应头响应内容类型为图片
- /*this.getClass().getClassLoader().getResourceAsStream()路径采用相对路径直接可以从工程的path路径去找。
- * 这里name是资源的类路径,它是相对与“/”根路径下的位置。getResource得到的是一个URL对象来定位资源,
- * 而getResourceAsStream取得该资源输入流的引用保证程序可以从正确的位置抽取数据
- * */
- InputStream in = this.getClass().getClassLoader().getResourceAsStream("girl.jpeg"); //获得输入流图片
- int len = in.available(); //统计字节长度
- byte[] buffer = new byte[len];
- in.read(buffer); //读取字符节
- OutputStream out = response.getOutputStream(); //输出流
- out.write(buffer); //向输出流中写入字节信息
- out.flush();
- out.close();
- }
- public void doPost(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- doGet(request,response);
- }
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//响应动态图片
response.setContentType("image/jpeg"); //设置响应头响应内容类型为图片
/*this.getClass().getClassLoader().getResourceAsStream()路径采用相对路径直接可以从工程的path路径去找。
* 这里name是资源的类路径,它是相对与“/”根路径下的位置。getResource得到的是一个URL对象来定位资源,
* 而getResourceAsStream取得该资源输入流的引用保证程序可以从正确的位置抽取数据
* */
InputStream in = this.getClass().getClassLoader().getResourceAsStream("girl.jpeg"); //获得输入流图片
int len = in.available(); //统计字节长度
byte[] buffer = new byte[len];
in.read(buffer); //读取字符节
OutputStream out = response.getOutputStream(); //输出流
out.write(buffer); //向输出流中写入字节信息
out.flush();
out.close();
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request,response);
}
3.定时刷新页面
代码内容如下:
- //3.定时刷新页面
- response.setHeader("refresh", "1");//每隔1秒刷新一次
- response.setContentType("text/html;charset=gbk");
- PrintWriter out = response.getWriter();
- out.println("<!DOCTYPE HTML>");
- out.println("<html>");
- out.println("<head><title>Refresh Servlet</title></head>");
- out.println("<body>");
- out.print("当前刷新时间为:");
- out.print(new Date().toLocaleString());
- out.println("</body>");
- out.println("</html>");
//3.定时刷新页面
response.setHeader("refresh", "1");//每隔1秒刷新一次
response.setContentType("text/html;charset=gbk");
PrintWriter out = response.getWriter();
out.println("<!DOCTYPE HTML>");
out.println("<html>");
out.println("<head><title>Refresh Servlet</title></head>");
out.println("<body>");
out.print("当前刷新时间为:");
out.print(new Date().toLocaleString());
out.println("</body>");
out.println("</html>");比如一个直播NBA视频,当前时间两队的比分的显示。
本文介绍了如何使用Java Servlet实现动态响应Excel文件、JPEG图片的方法,并展示了如何设置HTTP响应头实现网页定时刷新。
4347

被折叠的 条评论
为什么被折叠?



