JAVA 将byte数组类型的图片转换成换成JPEG格式

将byte数组转换成JPEG格式返回到页面

开发工具与关键技术:MyEclipse 10/Java
作者:cxxone
撰写时间:2019年07月15日
第一步:先拿到byte数组的图片(我的是直接从数据库查出来的)
IndentService is=new IndentService();//实例一个类对象
		response.setContentType("image/jpeg");//将response设置为JPEG格式
		int id=(request.getParameter("oper")==null)?0:Integer.parseInt(request.getParameter("oper"));
    //按条件查询指定的图片
Indent list= is.selectPicture(id);
第二步:将图片转换成JPEG格式(关键)
// 将byte数组转换成字节流
		ByteArrayInputStream bile1=new ByteArrayInputStream(list.getPicture());
       //将字节流转为BufferedImage格式
		BufferedImage bil=ImageIO.read(bile1);
       //输出流
		ServletOutputStream out = response.getOutputStream();
       //将输出流转换为JPEG格式
		JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
		encoder.encode(bil);
		out.flush();
	out.close();

第三步:在jsp直接请求该方法即可(这个src路径就是图片的路径)

效果图:
JAVA 将byte数组类型的图片转换成换成JPEG格式_第1张图片

你可能感兴趣的:(Java)