spring boot项目上传头像

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

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

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

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

配置文件写一个文件路径

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

磁盘确实有这个文件

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


最后检查数据库:

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

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

后端逻辑:



效果:

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

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

相关推荐
Dovis(誓平步青云)4 分钟前
《Linux CPU频率为何忽高忽低:cpufreq、idle状态与性能抖动教程》
linux·运维·服务器·spring boot·后端·生成对抗网络
碎碎念_49212 小时前
SpringBoot + Vue 前后端分离从 0 到 1 完整环境配置流程
vue.js·spring boot·后端
Fuzio17 小时前
用 Spring Boot + Vue + Fuzio 构建现代 Java 桌面应用
vue.js·spring boot
乐观的Terry17 小时前
1、为什么要自己造发布系统
java·spring boot·后端·spring cloud·架构
web行路人19 小时前
Spring Boot 第四周:集成 Spring Security 与 JWT 鉴权实践
spring boot·后端·spring
QQ_216962909620 小时前
【项目编号:project05966】SpringBoot/Vue 电影推荐系统:用户端推荐、电影资讯与后台数据管理全流程
vue.js·spring boot·后端
吴声子夜歌21 小时前
Redis 6.x——整合SpringBoot
数据库·spring boot·redis
程序员黎剑1 天前
我把算卦变成了一段if-else
java·vue.js·spring boot·后端·ai编程
3DVisionary1 天前
如何用单目高速DIC把“看不见“的振动变成“数得清“的数据
java·spring boot·python·数码相机·微小振动·精密件·单目高速dic
hdsoft_huge1 天前
SpringBoot系列12:整合RabbitMQ消息队列,异步解耦、死信队列完整业务案例
spring boot·rabbitmq·java-rabbitmq