Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >若依框架:上传、下载、回显文件怎么处理的,一篇就懂

若依框架:上传、下载、回显文件怎么处理的,一篇就懂

作者头像
知识浅谈
发布于 2024-05-25 00:47:23
发布于 2024-05-25 00:47:23
8.2K15
代码可运行
举报
文章被收录于专栏:分享学习分享学习
运行总次数:5
代码可运行

在使用若依框架上传文件的时候遇到一个问题:在富文本框中上传一个文件传到哪里了,又怎么回显的,这些问题扯出来好多东西哦,且随我一步步看。

🤞主要说的是后端的代码实现,前端的在components组件中的Editor中自己看就行🤞

🎈上传后怎么处理的

先把后端代码贴出来,代码中还调用了各种方法就不粘出来了

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
    @PostMapping("/upload")
    public AjaxResult uploadFile(MultipartFile file) throws Exception
    {
        try
        {
            // 上传文件路径
            String filePath = RuoYiConfig.getUploadPath();
            // 上传并返回新文件名称
            String fileName = FileUploadUtils.upload(filePath, file);
            String url = serverConfig.getUrl() + fileName;
            AjaxResult ajax = AjaxResult.success();
            ajax.put("url", url);
            ajax.put("fileName", fileName);
            ajax.put("newFileName", FileUtils.getName(fileName));
            ajax.put("originalFilename", file.getOriginalFilename());
            return ajax;
        }
        catch (Exception e)
        {
            return AjaxResult.error(e.getMessage());
        }
    }

上传接口 /common/upload

  1. 接口中首先获取文件要存储的路径 String filePath = RuoYiConfig.getUploadPath(); 因为在配置文件application.yml我们可以找到一个这段代码: 文件路径 示例( Windows配置D:/ruoyi/uploadPath,Linux配置 /home/ruoyi/uploadPath) profile: D:/ruoyi/uploadPath 就是上传文件的根路径。
  2. 然后对上传的文件进行各种检查:文件大小,文件后缀等等,
  3. 然后开始把上传的文件存到本地 String fileName = FileUploadUtils.upload(filePath, file);
  4. 最后获取文件的url路径 举个例子:文件地址是D:/ruoyi/uploadPath/upload/2024/01/01/12345.jpg 转换后是profile/upload/2024/01/01/12345.jpg 然后存到数据库,发现没有前缀变了,这个时候文件就上传完了,profile/upload/2024/01/01/12345.jpg传回前端。前缀为什么边接着看。

🎈上传后的文件怎么回显和下载

🍮文件回显

在富文本框中文件上传之后,需要进行回显,上传后拿到了地址profile/upload/2024/01/01/12345.jpg,这个时候去访问后端localhost/dev-api/profile/upload/2024/01/01/12345.jpg 访问地址的过程中经历了两步处理 第一步:前端地址映射 localhost/dev-api/ 变成http://localhost:8080

在这里插入图片描述
在这里插入图片描述

第二步: 访问后端 http://localhost:8080/profile/upload/2024/01/01/12345.jpg 会发现没有/profile 这个接口,那这个接口在哪?访问后端最先走过的就是拦截器,查看各种拦截器,最后在这个地方找到了ResourcesConfig配置类中。

在这里插入图片描述
在这里插入图片描述

这个方法会把/profile开头的路径给替换掉 RuoYiConfig.getProfile() 会获取到 最初的文件根路径D:/ruoyi/uploadPath 会自动转向到 RuoYiConfig.getProfile() 目录下寻找对应的资源文件,也就找到了请求文件最后返回file:D:/ruoyi/uploadPath/upload/123456.jpg文件流。

🍮文件下载

和文件回显同理。

🍚总结

大功告成,撒花致谢🎆🎇🌟,关注我不迷路,带你起飞带你富。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-04-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
1 条评论
热度
最新
后端富文本图片上传路径 会有prod-api 但是小程序上传富文本内容 不存在prod-api 这样就造成了一个后果是 前端拿不到后台管理系统的富文本图片 后台管理系统点击查看 也查看不了小程序富文本上传的图片 这怎么解决这个问题
后端富文本图片上传路径 会有prod-api 但是小程序上传富文本内容 不存在prod-api 这样就造成了一个后果是 前端拿不到后台管理系统的富文本图片 后台管理系统点击查看 也查看不了小程序富文本上传的图片 这怎么解决这个问题
回复回复点赞举报
推荐阅读
编辑精选文章
换一批
Spring Boot中实现文件上传和下载功能示例
在Spring Boot中实现文件上传和下载功能是一个常见的需求,可以通过几个简单的步骤来完成。下面来介绍一下如何实现文件上传和下载。
用户7353950
2024/06/18
1.7K0
Spring Boot中实现文件上传和下载功能示例
基于若依框架扩展微信扫码登录功能-扫码登录实现
PC 端点击微信登录时生成一个 uuid 存入 redis 并弹出一个二维码,二维码地址(附带了生成的 uuid)是移动端的网页,微信扫码后打开的是配置好的网页授权链接,通过网页授权的方式获取 code 拿到用户 openid 后存入redis中,PC 端通过轮询方式根据生成的 uuid 查询用户 openid 进行登录。
薛定喵君
2024/10/07
1.6K0
使用 java 封装的PDF附件上传功能
以下是一个使用 Java 实现封装 PDF 附件上传功能的示例,基于常见的 Servlet 技术结合 Apache Commons FileUpload 组件(也可使用 Spring Boot 等框架简化,这里先以基础 Servlet 方式演示核心逻辑 )。示例包含前端页面(简单 HTML 表单)和后端 Java 代码处理上传:
小焱
2025/07/07
1200
Feign实现文件上传下载
Feign框架对于文件上传消息体格式并没有做原生支持,需要集成模块feign-form来实现。
编程随笔
2022/04/29
1.3K0
struts2 文件上传
uploadPath是相对webroot的路径,即webroot下的路径,将文件上传至该文件夹下。
week
2018/08/27
3450
SpringBoot + Minio 实现文件切片极速上传技术(实战典藏版)
提示:请不要多个博客来回跳着看,此文章之详细绝无仅有,融合多家之长,如果遇见报错,请仔细捋一遍文章,不要忽略!我在写的时候因为许多文章不全面,来回跳遇见许多坑,希望大家可以避免,本文章中悉数做了标注提醒!!!
码猿技术专栏
2024/07/08
1.9K0
SpringBoot + Minio 实现文件切片极速上传技术(实战典藏版)
SpringMVC--文件上传
上篇SpringMVC--SSM整合中整合了SSM三大框架,并进行了接口的编写实现了数据库交互。在后台开发中常用的功能是文件上传,今天来实现后台的文件上传功能:将图片上传,并将服务器存储的文件路径返回给浏览器
aruba
2022/05/25
4240
SpringMVC--文件上传
基于若依框架扩展微信扫码登录功能-微信绑定实现
最近在学习java相关知识,朋友推荐看一下若依框架,于是在若依框架(前后端分离版)的基础上扩展了一下微信登录功能。
薛定喵君
2024/10/06
2K6
Java SpringBoot本地上传文件到resources目录永久保存下载的最佳实践
需求背景:Java后端项目上传文件是一个很常见的需求,一般正式项目中我们上传文件都是利用第三方阿里云OSS这类的,但是如果只是为了学习之用,那我们可能就会直接上传到电脑上某个本地文件夹。
人人都是码农
2023/11/17
2.1K0
Java SpringBoot本地上传文件到resources目录永久保存下载的最佳实践
jquery上传图片并回显
在工作中,有时候我们会遇到这样的情况:上传图片并回显。 先来看看代码怎么写。然后咱们在讨论,这个案例中使用到的技术。 页面是用的是thymeleaf开发的。 说明:页面中必须引入query 上传的div: <div class="form-group">       <label class="col-sm-3 control-label">图片:</label>     <div class="col-sm-8" >         <input type="hidden" name="name"  id
凯哥Java
2022/12/16
4.6K0
jquery上传图片并回显
使用 Go 语言完成 HTTP 文件上传与下载
最近我使用 Go 语言完成了一个正式的 web 应用,有一些方面的问题在使用 Go 开发 web 应用过程中比较重要。过去,我将 web 开发作为一项职业并且把使用不同的语言和范式开发 web 应用作为一项爱好,因此对于 web 开发领域有一些心得体会。 总的来说,我喜欢使用 Go 语言进行 web 开发,尽管开始一段时间需要去适应它。Go 语言有一些坑,但是正如本篇文章中所要讨论的文件上传与下载,Go 语言的标准库与内置函数,使得开发是种愉快的体验。 在接下来的几篇文章中,我将重点讨论我在 Go 中编写生
李海彬
2018/03/19
4.4K0
Javaweb| 上传文件
前段时间推了一篇Javaweb中可以下载文件的方法,不难,当时格式太乱了。(今天在词条又重新发了一次)后来膜拜大佬,学会了一些精妙简单排版,受益受益了。 今天给大家再分享一个上传文件的方法,在百度上搜索真是八仙过海,各显神通。这个也是在前人的基础上,稍加修改,分享给大家。个人挺喜欢的。 文件上传与文件下载作为两个重要模块,也是每个网站、app不可或缺的一部分,日积月累,积少成多。
子乾建建-Jeff
2020/06/29
8320
struts2 文件上传
upload.jsp <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <%@taglib prefix="s" uri="/struts-tags"%> <% String path = request.getContextPath(); String basePath = request.getScheme() + "://" + request.getServerName() + ":" + reques
week
2018/08/27
4200
ExtJs框架 文件上传
一、前端页面引入ExtJS <!--ExtJs框架开始--> <script type="text/javascript" src="../../include/Ext/adapter/ext/ext-base.js"></script> <script type="text/javascript" src="../../include/Ext/ext-all.js"></script> <script src="../../include/Ext/src/locale/ext-lang-zh
week
2018/08/24
1.1K0
SpringBoot开发案例之微信小程序文件上传
最近在做一个口语测评的小程序服务端,小程序涉及到了音频文件的上传,按理说应该统一封装一个第三方上传接口服务提供给前段调用,但是开发没有那么多道理,暂且为了省事就封装到后端服务中去了。
小柒2012
2018/03/30
2.8K3
SpringBoot开发案例之微信小程序文件上传
文件上传配合后端
官方文档-wx.chooseMessageFile 小程序端 wxml <form bindsubmit="formSubmit" bindreset="formReset"> <view style='position: fixed; width: 100%;'> <view class='tu1'> <block wx:for="{{img_arr}}" wx:key="index"> <view class='log
Remember_Ray
2020/11/04
6040
文件上传配合后端
一文带你看懂 前后端之间图片的上传与回显
上传文件需要发送请求。在这些请求中,浏览器将数据拆分为小的“块”,然后通过连接逐个发送这些块。这是必要的,因为文件可能过大而无法一次性发送作为一个庞大的有效负载。
用户10143704
2024/03/22
3.2K0
前后端分离 JWT 登录实践
关于 JWT,松哥之前其实写过相关的教程。最近有小伙伴在微信上发消息,问松哥能不能分析一下若依项目中 JWT 登录流程,因为这个项目现在有不少人将之作为脚手架来开发商业项目。我周末抽空看了下,感觉还蛮简单的,于是整一篇文章和大家分享一下这里的 JWT 登录是咋玩的。 本文我将从如下几个方面来和大家分析: 验证码分析 登录流程分析 认证校验流程分析 好啦,不废话了,咱们开整吧! 1. 准备工作 若依这个项目有单体版的也有微服务版的,我这里以单体版的为例来和小伙伴们分享,微服务版的以后有空了也可以整一篇文章和大
江南一点雨
2022/04/18
7360
前后端分离 JWT 登录实践
SpringMvc实现文件上传与下载
表单部分代码我就不贴 了,只要注意下表单的enctype="multipart/form-data"这个属性必须加上,表明以二进制的数据格式来传输数据
kl博主
2023/11/17
2200
DVWA靶机之文件上传漏洞通关笔记
文件上传漏洞通常是由于对上传文件的类型、内容没有进行严格的过滤、检查,使得攻击者可以通过上传木马获取服务器的webshell权限,因此文件上传漏洞带来的危害常常是毁灭性的。
Power7089
2019/07/25
1.8K0
相关推荐
Spring Boot中实现文件上传和下载功能示例
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验