Response响应字符数据
案例举例
运行测试 响应HTML标签案例
运行测试content简化(支持中文) Response响应字节数据
案例演示(响应图片)
运行测试 简化IO流传输
导入commons-io工具类运行测试
Response响应字符数据 案例举例我们可以从响应、response对象调用字符流方法,获取字符,写入到response(响应)中
package com.taotao.web.Response;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.annotation.*;
import java.io.IOException;
import java.io.PrintWriter;
@WebServlet("/resp3")
public class ResponseDemo3 extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//1.获取字符输出流
PrintWriter writer = response.getWriter();
writer.write("aaa");
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doGet(request, response);
}
}
运行测试
响应HTML标签案例
package com.taotao.web.Response;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.annotation.*;
import java.io.IOException;
import java.io.PrintWriter;
@WebServlet("/resp3")
public class ResponseDemo3 extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//1.获取字符输出流
PrintWriter writer = response.getWriter();
//content-type
response.setHeader("content-type","text/html");
writer.write("aaa");
writer.write("this was response write h1 content");
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doGet(request, response);
}
}
运行测试
content简化(支持中文)
Response响应字节数据
案例演示(响应图片)
同样我们可以通过IO流响应字节流文件,比如图片 - 提取图片 - 获得response对象的字节输出流,然后持续输送字节数据即可,下面是IO流内容
package com.taotao.web.Response;
import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.PrintWriter;
@WebServlet("/resp4")
@SuppressWarnings({"all"})
public class ResponseDemo4 extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//1.读取文件
FileInputStream fis = new FileInputStream("d://zhong.jpg");
//2.获取response字节输出流
ServletOutputStream os = response.getOutputStream();
//3.完成流的copy
byte[] buf = new byte[1024];
int len = 0;
while((len = fis.read(buf)) != -1){
os.write(buf,0,len);
}
fis.close();
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doGet(request, response);
}
}
运行测试
简化IO流传输
导入commons-io工具类
编写pom.xml文件,导入工具类
commons-io commons-io 2.6
刷新导入
重新写IO传输内容
package com.taotao.web.Response;
import org.apache.commons.io.IOUtils;
import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.PrintWriter;
@WebServlet("/resp4")
@SuppressWarnings({"all"})
public class ResponseDemo4 extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//1.读取文件
FileInputStream fis = new FileInputStream("d://zhong.jpg");
//2.获取response字节输出流
ServletOutputStream os = response.getOutputStream();
//3.完成流的copy
IOUtils.copy(fis,os);
fis.close();
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
this.doGet(request, response);
}
}
运行测试



