日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

java基于spring boot本地上傳圖片示例解析

瀏覽:134日期:2023-08-26 11:45:53

前幾天項目中剛好需要上傳圖片的需求,當時想的是用七牛云,因為我用七牛云也用了好幾次,就是把圖片上傳到七牛云空間里面,數據庫里面保存的是這張上傳圖片的url地址 那么頁面訪問也就很方便,考慮到項目部署的環境我就用了本地上傳,不牽涉數據庫的操作。我就花了半個小時寫了個本地上傳圖片的小demo。非常的簡單。

下面是需要的依賴 pom.xml文件:

<?xml version='1.0' encoding='UTF-8'?> <project xmlns='http://maven.apache.org/POM/4.0.0' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd'> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.1.3.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>cn.com.sctic</groupId> <artifactId>upload</artifactId> <version>0.0.1-SNAPSHOT</version> <name>upload</name> <description>Demo project for Spring Boot</description> <properties> <java.version>1.8</java.version> </properties> <dependencies> <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId> </dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId><scope>runtime</scope> </dependency> <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope> </dependency> </dependencies> <build> <plugins><plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId></plugin> </plugins> </build> </project>

控制器: UploadController

@Controller public class UploadController { private Logger logger = LoggerFactory.getLogger(this.getClass()); @Value('${scitc.upload.src}') private String rootPath; @Value('${scitc.upload.host}') private String uploadhost; @RequestMapping(value = '/uploadFile',method = {RequestMethod.POST,RequestMethod.GET}) @ResponseBody public String uploadFile(MultipartFile file) {//文件的完整名稱,如spring.jpeg String filename = file.getOriginalFilename(); //文件名,如spring String name = filename.substring(0,filename.indexOf('.')); //文件后綴,如.jpeg String suffix = filename.substring(filename.lastIndexOf('.'));//創建年月文件夾 Calendar date = Calendar.getInstance(); File dateDirs = new File(date.get(Calendar.YEAR) + File.separator + (date.get(Calendar.MONTH)+1));//目標文件 File descFile = new File(rootPath+File.separator+dateDirs+File.separator+filename); int i = 1; //若文件存在重命名 String newFilename = filename; while(descFile.exists()) {newFilename = name+'('+i+')'+suffix;String parentPath = descFile.getParent();descFile = new File(parentPath+File.separator+newFilename);i++; } //判斷目標文件所在的目錄是否存在 if(!descFile.getParentFile().exists()) {//如果目標文件所在的目錄不存在,則創建父目錄descFile.getParentFile().mkdirs(); } //將內存中的數據寫入磁盤 try {file.transferTo(descFile); } catch (Exception e) {e.printStackTrace();logger.error('上傳失敗,cause:{}',e); } //完整的url String fileUrl = uploadhost + rootPath +dateDirs+ '/'+newFilename; return 'success:' + fileUrl; } }

注意:rootPath,uploadhost是可以通過application.properties或者application.yml進行配置的。

由于要對外部資源進行映射需要創建一個類繼承WebMvcConfigurationSupport這個適配器,下面是WebMvcConfigurer的這個配置類,代碼如下:

@Configuration public class WebMvcConfigurer extends WebMvcConfigurationSupport { @Value('${scitc.upload.src}') private String src; @Override public void addResourceHandlers(ResourceHandlerRegistry registry) { registry.addResourceHandler(src + '/**').addResourceLocations('file:' + src); } }

注意:這里的src也是從配置文件applicaiton.properties中得到了。

下面是application.properties配置:

server.port=8848 ##文件上傳config scitc.upload.host:127.0.0.1:${server.port} scitc.upload.src=/Users/jswzj/Desktop/uploads/ spring.servlet.multipart.maxFileSize=10MB spring.servlet.multipart.maxRequestSize=10MB server.port=8848 服務器的端口號 scitc.upload.host:服務器ip地址 + server.port scitc.upload.src:你要把用戶上傳的圖片上傳到那個位置**

最后我們訪問這個接口效果圖如下:

java基于spring boot本地上傳圖片示例解析

上傳成功后拿到這個url地址 粘貼到瀏覽器地址上就能訪問了

java基于spring boot本地上傳圖片示例解析

總結:圖片上傳有很多的方式,當然這個是根據業務的需求,很多人都喜歡把圖片的url上傳到數據庫中,用實體類來對圖片的高度、寬度、名稱、url進行封裝,我覺得如果你部署的那臺服務器是有網絡的環境下建議用七牛云上傳,七牛云上傳把圖片保存到七牛云空間,那個url地址是不會發生變化的,不會應為你項目的遷移或者服務器地址發生變化而受影響。看各自的需求吧。等有時間我會出一個七牛云上傳的demo讓大家學習。最后謝謝大家的支持,希望大家每天都要收獲。祝大家早日成為大神。

下面是這個demo的github的地址,希望大家fork,start一下,謝謝

https://github.com/zhoubiao188/springboot-upload

到此這篇關于java基于spring boot本地上傳圖片示例解析的文章就介紹到這了,更多相關spring boot本地上傳圖片內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Java
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
亚洲免费在线| 国产精品久久久久久久久久久久久久久 | 免费一级片91| 西西人体一区二区| 亚洲欧美日韩视频二区| 免费黄网站欧美| 国产亚洲在线| 日韩精品一卡二卡三卡四卡无卡| 日韩专区欧美专区| 日韩久久一区| 国产精品密蕾丝视频下载| 欧美激情综合| 麻豆精品蜜桃视频网站| 成人亚洲一区| av亚洲一区二区三区| 久久国产电影| 中文精品视频| 一区二区三区四区日韩| 少妇精品久久久一区二区三区| 亚洲色图国产| 欧美日本久久| 国产精品白丝久久av网站| 欧美激情福利| 日本精品在线中文字幕| 好吊日精品视频| 一区二区三区四区在线观看国产日韩| 日韩av网站免费在线| 麻豆精品视频在线| 四虎影视精品| 免费观看在线综合色| 国产精品一区二区中文字幕| 国产精品黑丝在线播放| 99久久99久久精品国产片果冰| 香蕉精品999视频一区二区| 日韩精品视频中文字幕| 麻豆91精品91久久久的内涵| 国产精品99一区二区三| 天堂网在线观看国产精品| 蜜臀精品一区二区三区在线观看| 久久精品av麻豆的观看方式| 捆绑调教日本一区二区三区| 在线综合亚洲| 久久久久久亚洲精品美女| 精品日韩视频| 亚洲v天堂v手机在线| 精品美女视频 | 精品美女久久| 欧美中文字幕一区二区| 视频一区欧美日韩| 国产福利一区二区精品秒拍 | 久久xxxx精品视频| 国产精品一站二站| 亚洲国产专区校园欧美| 欧美日韩网址| 亚洲二区免费| 国产日韩高清一区二区三区在线 | 色偷偷偷在线视频播放| 国产精品日韩| 精品视频一区二区三区四区五区| 亚洲午夜黄色| 国产精品第一国产精品| 欧美二区视频| 国产精品久久亚洲不卡| 99热免费精品| 精品国产一级| 亚洲18在线| 99精品国产一区二区三区| 欧美一级二级三级视频| 中文字幕在线看片| 欧美日韩一区二区三区不卡视频| 毛片在线网站| 久久国内精品自在自线400部| 欧洲毛片在线视频免费观看| 国产精品sm| 精品在线播放| 国产成人精品福利| 日韩国产欧美三级| 夜夜嗨av一区二区三区网站四季av| 久久中文字幕一区二区| 亚洲人成毛片在线播放女女| 日韩在线不卡| 国产精品网在线观看| 亚洲一区二区日韩| 99精品一区| 国产一区二区三区久久久久久久久| 亚洲欧美日韩一区在线观看| 高清av不卡| 麻豆精品视频在线观看| 亚洲字幕久久| 欧美午夜不卡| 日韩精品影视| 麻豆视频在线看| 久久a爱视频| 日韩黄色av| 免费在线视频一区| 日韩视频久久| 欧美日一区二区| 国产精品久久久久久久久妇女| 国产精品调教| 欧美日韩一视频区二区| 性一交一乱一区二区洋洋av| 欧美日韩尤物久久| 日韩av免费大片| 欧美国产亚洲精品| 欧美亚洲自偷自偷| 日本在线不卡视频| 最近国产精品视频| 蜜臀a∨国产成人精品| 亚洲视频www| 五月综合激情| 久久中文字幕av一区二区不卡| 国产精品专区免费| 麻豆国产在线| 岛国av在线网站| 成人日韩av| 精品伊人久久久| 国产精品亚洲二区| 国产精品地址| 国产精品美女在线观看直播| 国产欧美欧美| 久久av导航| 精品国产91| 国产一区二区三区四区大秀| 国产96在线亚洲| 中文字幕一区久| 樱桃视频成人在线观看| 国产资源在线观看入口av| 欧美激情另类| 亚洲天堂一区二区| 国产99亚洲| 1024精品一区二区三区| 激情婷婷亚洲| 99国产精品私拍| 亚洲一区欧美| 奇米色欧美一区二区三区| 日韩精品三区四区| 国产伦精品一区二区三区千人斩 | 日韩一区二区免费看| 天堂成人免费av电影一区| 免费在线视频一区| 日韩1区2区3区| 国产欧美午夜| 福利一区二区三区视频在线观看| 91青青国产在线观看精品| 精精国产xxxx视频在线野外| 精品中文字幕一区二区三区av| 9久re热视频在线精品| 亚洲开心激情| 国产欧美啪啪| 黑人精品一区| 亚洲少妇一区| 偷拍亚洲精品| 国产三级精品三级在线观看国产| 国产精品白丝一区二区三区| 国产在线不卡一区二区三区| 蜜臀久久精品| 首页欧美精品中文字幕| 91精品麻豆| 黄色欧美在线| 五月天综合网站| 日本不卡视频在线| 精品一区视频| 伊人久久亚洲美女图片| 日韩精品免费视频一区二区三区| 国产精品亚洲四区在线观看| 日韩成人三级| 老牛国产精品一区的观看方式| 国产精品激情电影| 丝袜av一区| 亚洲精品第一| 97人人精品| 免费成人在线影院| 欧美成人aaa| 精品一区在线| 久久精品99国产精品| 三上悠亚国产精品一区二区三区 | 丝袜美腿亚洲色图| 国产精品网址| 在线日韩中文| 国产精品片aa在线观看| 成人羞羞视频播放网站| 免播放器亚洲| 久久香蕉网站| 石原莉奈在线亚洲二区| 精品网站999| 蜜臀久久99精品久久久久宅男| 精品一区二区三区中文字幕视频| 亚洲黄页一区| 精品国产亚洲日本| 欧美一区=区| 伊人网在线播放| 日韩高清一区| 91九色精品国产一区二区| 国产精品大片免费观看| 99视频一区| 成人午夜在线| 蜜桃久久久久久| 三上悠亚国产精品一区二区三区 | 国产精品一二| 久热精品在线|