以Spring Boot的方式顯示圖片或下載文件到瀏覽器的示例代碼
以Java web的方式顯示圖片到瀏覽器以Java web的方式下載服務(wù)器文件到瀏覽器
以Spring Boot的方式顯示圖片或下載文件到瀏覽器
請(qǐng)求例子: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+"/");
}
}
運(yùn)行結(jié)果:
顯示圖片

下載文件

補(bǔ)充: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();
//創(chuàng)建一個(gè)Buffer字符串
byte[] buffer = new byte[1024];
//每次讀取的字符串長度,如果為-1,代表全部讀取完畢
int len = 0;
//使用一個(gè)輸入流從buffer里把數(shù)據(jù)讀取出來
while( (len=is.read(buffer)) != -1 ){
//用輸出流往buffer里寫入數(shù)據(jù),中間參數(shù)代表從哪個(gè)位置開始讀,len代表讀取的長度
outStream.write(buffer, 0, len);
}
byte[] temp = outStream.toByteArray();
return temp;
}
到此這篇關(guān)于以Spring Boot的方式顯示圖片或下載文件到瀏覽器的示例代碼的文章就介紹到這了,更多相關(guān)Spring Boot下載文件到瀏覽器內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
解決IDEA 啟動(dòng)Tomcat控制臺(tái)亂碼問題
今天在Idea中用Tomcat跑一個(gè)Web項(xiàng)目,啟動(dòng)后,Tomcat日志在控制臺(tái)打印出來都是亂碼,初次遇到這個(gè)問題真的很棘手,今天小編帶領(lǐng)大家一起看看解決方法2018-07-07
SpringBoot?docker項(xiàng)目部署實(shí)戰(zhàn)
本文主要介紹了SpringBoot?docker項(xiàng)目部署實(shí)戰(zhàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-08-08
詳解使用Jenkins部署Spring Boot項(xiàng)目
這篇文章主要介紹了詳解使用Jenkins部署Spring Boot,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-11-11
Java SpringBoot 使用攔截器作為權(quán)限控制的實(shí)現(xiàn)方法
這篇文章主要介紹了Java SpringBoot 使用攔截器作為權(quán)限控制的實(shí)現(xiàn),文中通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-10-10
Hibernate Validation自定義注解校驗(yàn)的實(shí)現(xiàn)
這篇文章主要介紹了Hibernate Validation自定義注解校驗(yàn)的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04
Java使用fill()數(shù)組填充的實(shí)現(xiàn)
這篇文章主要介紹了Java使用fill()數(shù)組填充的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-01-01
SQLSyntaxErrorException-ExecutorException報(bào)錯(cuò)解決分析
這篇文章主要為大家介紹了SQLSyntaxErrorException-ExecutorException報(bào)錯(cuò)解決分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08
Java?SpringBoot項(xiàng)目如何優(yōu)雅的實(shí)現(xiàn)操作日志記錄
這篇文章主要介紹了Java?SpringBoot項(xiàng)目如何優(yōu)雅的實(shí)現(xiàn)操作日志記錄,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以參考一下2022-08-08
SpringMVC Mybatis配置多個(gè)數(shù)據(jù)源并切換代碼詳解
這篇文章主要介紹了SpringMVC Mybatis配置多個(gè)數(shù)據(jù)源并切換代碼詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-11-11

