spring boot项目上传头像

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

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

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

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

配置文件写一个文件路径

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

磁盘确实有这个文件

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


最后检查数据库:

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

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

后端逻辑:



效果:

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

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

相关推荐
little_xianzhong39 分钟前
关于对逾期提醒的定时任务~改进完善
java·数据库·spring boot·spring·mybatis
苹果醋31 小时前
数据库索引设计:在 MongoDB 中创建高效索引的策略
java·运维·spring boot·mysql·nginx
彭于晏Yan1 小时前
SpringBoot优化树形结构数据查询
java·spring boot·后端
bug攻城狮3 小时前
Spring Boot Banner
java·spring boot·后端
MadPrinter4 小时前
SpringBoot学习日记 Day11:博客系统核心功能深度开发
java·spring boot·后端·学习·spring·mybatis
Java水解5 小时前
Spring Boot 启动流程详解
spring boot·后端
网安Ruler6 小时前
第49天:Web开发-JavaEE应用&SpringBoot栈&模版注入&Thymeleaf&Freemarker&Velocity
java·spring boot·后端
奔跑吧邓邓子6 小时前
【Java实战㉟】Spring Boot与MyBatis:数据库交互的进阶之旅
java·spring boot·实战·mybatis·数据库交互
kong@react7 小时前
springboot项目详细配置rabbitmq及使用rabbitmq完成评论功能
spring boot·rabbitmq·java-rabbitmq
九转苍翎8 小时前
星辰诞愿——生日快乐
spring boot