以Java web的方式显示图片到浏览器以Java web的方式下载服务器文件到浏览器
以Spring Boot的方式显示图片或下载文件到浏览器
请求例子:http://localhost:8080/image/1564550185144.jpeg
示例代码:
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
import java.io.File;
import java.io.IOException;
@Configuration
public class ImageShow implements WebMvcConfigurer {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
File directory = new File("image");
String path = null;
try {
path = directory.getCanonicalPath();
}catch (IOException e){
e.printStackTrace();
}
registry.addResourceHandler("/image/**").addResourceLocations("file:"+path+"/");
}
}
运行结果:
显示图片

下载文件

补充:springboot 下载图片并输出浏览器
@GetMapping(value = "v1/returnGroupCode",produces = MediaType.IMAGE_JPEG_VALUE)
public byte[] returnGroupCode(@RequestParam("seriesUniqueCode") String seriesUniqueCode){
URL url = null;
InputStream is = null;
ByteArrayOutputStream outStream = null;
HttpURLConnection httpUrl = null;
try{
url = new URL(pdGroupcodeSeriesInfo.getQrCodeUrl());
httpUrl = (HttpURLConnection) url.openConnection();
httpUrl.connect();
httpUrl.getInputStream();
is = httpUrl.getInputStream();
outStream = new ByteArrayOutputStream();
//创建一个Buffer字符串
byte[] buffer = new byte[1024];
//每次读取的字符串长度,如果为-1,代表全部读取完毕
int len = 0;
//使用一个输入流从buffer里把数据读取出来
while( (len=is.read(buffer)) != -1 ){
//用输出流往buffer里写入数据,中间参数代表从哪个位置开始读,len代表读取的长度
outStream.write(buffer, 0, len);
}
byte[] temp = outStream.toByteArray();
return temp;
}
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

评论(0)