本文目录一览:
java web二进制流的图片如何用response返回给前台
FileOutputStream很明显你是用的文件流返回的
// 以byte流的方式打开文件 d:\1.gif
FileInputStream hFile = new FileInputStream(url); //得到文件大小
int i=hFile.available();
byte data[]=new byte[i]; //读数据
hFile.read(data); //得到向客户端输出二进制数据的对象
OutputStream toClient=response.getOutputStream(); //输出数据
toClient.write(data);
toClient.flush();
toClient.close();
hFile.close();
扩展资料:
如果是纯文本使用字符流,如果二进制文件,使用字节流。
如果只是得到信息,原样不动,不进行修改操作,例如文件上传和下载,这时就使用字节流。文件上传:在服务器端把浏览器端信息提取出来。文件下载:把服务器端内容写给浏览器端。
如果要操作的是自定义信息,这时使用字符流。
通过response获取的输出流它的真实类型是什么?
ServletOutputStream response.getOutputStream();
PrintWriter response.getWriter();
ServletOutputStream由于使用字节流多数是原样复制,所以使用write方法,而不是print方法。
PrintWriter:打印流,两个特点:1.可以设置自动刷新。2.可以将信息原样输出。
java后台怎么把数据库二进制图片传到前台显示?
两种思路,一种是你把图片下下来。告诉路径给前端。
另一种是你直接把图片转换成byte数组,返回给前端。前端是可以有办法的。(我用过这种用来爬虫爬验证码都是这么干的)
望采纳
JAVA如何将本地图片变成网络URL 再把URL传给前台
用js的滤镜功能可以实现不上传图片的预览
例如:
1.获取上传图片的路径,一般直接获取input框内的value就行,输入框的类型为file
var imgPath = document.getElementByIdx_x_x("fileName").value;
2.获取预览图片的div
var newPreview = document.getElementByIdx_x_x("preview");
newPreview.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)";
newPreview.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = imgPath;
newPreview.style.width = "100px";
newPreview.style.height = "100px";
上面是最关键的,必须有,否则无法显示,必须指定div的宽高,否则无法显示图片