spring boot项目上传头像

应用还是验证码使用的原理;但是代码逻辑却有所不同。
逻辑前端传给后端,然后写入本机磁盘去,文件名用uuid避免重复。写完就可以顺带把文件名保存到数据库里。上传就这样子。
怎么取用的;还是通过配置映射的方式;通过src的属性访问图片

后端接收并写入磁盘和数据库

映射文件路径;为什么要映射呢?

因为不映射;图片在你本机;用户怎么能访问到你图片呢;不像我们自己电脑的图片不需要通过网络就能直接路径访问;还得通过网络访问

配置文件写一个文件路径

在前端可以通过一下代码试验一下;看看是不是真的能展现出这个图片。

磁盘确实有这个文件

继续写完储存文件名在数据库的逻辑


最后检查数据库:

现在是取用的时候;我们在前端重新写一个请求;然后做出对应的响应;返回:image1+文件名

这个请求写在哪呢?点击提交上传完后触发这个图片的获取;那我们就可以在函数里面嵌套一个函数调用。逻辑:如果用户没上传头像;那么就使用默认的头像;如果上传了;也就是在数据库能查到头像;那么就使用用户的头像((我们上来就刷新一下这个方法;用户点击提交后也刷新一下这个方法))

后端逻辑:



效果:

多多少少还是有点瑕疵;毕竟前端不够专业。因为我们是有一个默认头像的;网络传输需要点时间;我们在查用户头像的时候;这会就是先显示默认头像;直到查询到才用于替换默认头像。如果要快一点的显示getphoto方法的调用放前面一点;就会先加载这个头像再加载其它。

我们应该再加一个判断条件;用户传的文件或者传的图片太大;我们就不应该让他提交;而是弹窗显示提示用户。但是目前就不做处理先。

相关推荐
云-缩影5 小时前
拆解 AI 图像生成应用的后端架构:ECS、OSS 和大模型 API 怎么配合
java·spring boot·后端
AI开源软件7 小时前
SpringBoot3+Vue3 财务管理系统如何设计:从业务单据到总账的模块划分
spring boot·vue3·领域建模·会计凭证·ruoyi office·业财协同·财务系统设计
Mikko712 小时前
Redis 连接数满了服务端有错误信息吗?连接数不增加却命令超时?6.2 实测连接池、超时与大 key 怎么判定
java·spring boot·redis·后端
计算机毕设定制辅导-无忧学长17 小时前
《基于微信小程序健康习惯激励系统设计与实现》
java·spring boot·mysql·微信小程序·uniapp·健康习惯激励系统
vipxieliang18 小时前
ValidX 正则表达式预编译优化:Pattern 复用策略
java·spring boot·后端
余槐i20 小时前
Spring Boot 3.2 偶发500无日志:线程池复用导致请求上下文丢失
spring boot·redis·后端·mysql·性能优化
无所谓^_^20 小时前
个人健康管理系统 | Springboot3 | Vue3
java·vue·毕业设计·springboot·课程设计·毕设·前后端分离
杨凯凡20 小时前
Spring Boot 的 @Transactional 为什么会失效?从代理、自调用到异常回滚的排查实战
java·spring boot·spring·事务·后端开发
云创智城-yuncitys1 天前
YunParking 4.0:JDK 17 与 Spring Boot 3.2 的停车云升级
java·开发语言·spring boot
paopaokaka_luck1 天前
灾害应急物资管理系统(AI应急助手、Echarts可视化数据看板、捐赠入库联动、 物资全流程管理、库存变动追溯、灾情资讯与互动反馈、物资发放公示)
java·前端·javascript·spring boot·mysql·tomcat·echarts