第一种方式(推荐):
1:
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException {
File file = new File("e:/1.jpg");
request.setCharacterEncoding("utf-8");
FileInputStream fis = new FileInputStream(file);
byte[] buffer = new byte[fis.available()];
fis.read(buffer);
String base = Base64Encoder.encode(buffer);
List<String> list = new ArrayList<>();
list.add(base);
OutputStream output = response.getOutputStream();
String json = new Gson().toJson(list);
out.write(json);
out.flush();
out.close();
}
2:
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException {
File file = new File("e:/1.jpg");
FileInputStream fis = new FileInputStream(file);
byte[] buffer = new byte[fis.available()];
OutputStream output = getResponse().getOutputStream();
out.write(buffer );
out.flush();
out.close();
}
//说明比较推荐第一种方式,除了可以传递图片还可以传递其他信息。当然第一种方式前台必须要用base64转码
//第二种直接放入输出流前台获取即可
前台
1:
function show() {
$.ajax({
type : "POST",//提交请求的方式
url : "BServlet",//访问servlet的路径
dataType : "json",
error : function(request) {//请求出错
alert("出错");
},
success : function(data) {//获得返回值
$.each(data, function(index, item) {
$('<img>', {
src : "data:image/*;base64,"+item[0]
}).css({
width : '600px',
height : "500px"
}).appendTo($('#imgcontainer'));
});
}
}
});
2:$("img").attr("src",访问的url);