首页 > 其他分享 >【SpringBoot】实现一个简单的图片上传

【SpringBoot】实现一个简单的图片上传

时间:2024-03-25 15:59:15浏览次数:18  
标签:factory SpringBoot System fileName String file println 上传 图片

前端上传表单

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<form enctype="multipart/form-data"  method="post" action="/upload">
文件:<input type="file" name="header_img"/>
    <input type="submit" value="上传"  />
</form>
</body>
</html>

后端接口

  • private static  String filePath = "D:\\sprint\\spring\\src\\main\\resources\\static\\upload\\";
    
    @RequestMapping(value="/upload")
    public String upload(@RequestParam("header_img") MultipartFile file,HttpServletRequest request){
        System.out.println("文件名称"+file.getOriginalFilename());
        System.out.println("文件类型"+file.getContentType());
        System.out.println("文件大小"+file.getSize());
        //获取文件名称
        String fileName = file.getOriginalFilename();
        //获取文件后缀名称
        String suffixNmae = fileName.substring(fileName.lastIndexOf("."));
        //转换名称 方舟文件名称冲突
        fileName = UUID.randomUUID()+suffixNmae;
        System.out.println("转换后的文件名称"+fileName);
        File data = new File(filePath + fileName);
        try {
            file.transferTo(data);
        }catch ( IllegalStateException e){
            e.printStackTrace();
        } catch (IOException e) {
            throw new RuntimeException(e);
        }

        return "1";
    }

限制图片大小

  • 不做任何处理的情况下,我上传一个2M左右的图片
    在这里插入图片描述
  • 在@SpringBootApplication 下加入拦截
    @Bean
    public MultipartConfigElement multipartConfigElement() {
        MultipartConfigFactory factory = new MultipartConfigFactory();
        //单个文件最大
        factory.setMaxFileSize(DataSize.parse("10240KB")); //KB,MB
        /// 设置总上传数据总大小
        factory.setMaxRequestSize(DataSize.parse("1024000KB"));
        return factory.createMultipartConfig();
    }

在这里插入图片描述

标签:factory,SpringBoot,System,fileName,String,file,println,上传,图片
From: https://blog.csdn.net/weixin_45799605/article/details/137009696

相关文章

  • ASP.NET Core 图片转 PDF
    前几天用DocNETPDF转图片,现在再用DocNET把图片合并回PDF…使用DocNET:https://github.com/GowenGit/docnetNuget:Install-PackageDocnet.Core合并比拆分简单:publicstaticboolImages2Pdf(List<string>imageList,stringoutputPath){boolr......
  • 【附源码】JAVA计算机毕业设计银行助学贷款管理系统(springboot+mysql+开题+论文)
    本系统(程序+源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着高等教育的普及和深化,越来越多的学生选择通过助学贷款来支持自己的学业。然而,传统的助学贷款管理方式往往存在效率低下、信息不透明、审批流程繁......
  • 【附源码】JAVA计算机毕业设计银行排号系统(springboot+mysql+开题+论文)
    本系统(程序+源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景在当今信息化、数字化的时代,银行业作为金融体系的基石,其服务质量和效率直接影响到客户的满意度和忠诚度。然而,传统的银行排号系统往往存在着效率低下......
  • 【附源码】JAVA计算机毕业设计音频服务系统(springboot+mysql+开题+论文)
    本系统(程序+源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着信息技术的飞速发展和人们生活水平的提高,音频服务在人们的日常生活中扮演着越来越重要的角色。从个人娱乐到商业应用,音频内容的需求日益旺盛,音频......
  • Java毕业设计-基于springboot开发的逍遥大药房管理系统-毕业论文+答辩PPT(附源代码+演
    文章目录前言一、毕设成果演示(源代码在文末)二、毕设摘要展示1、开发说明2、需求分析3、系统功能结构三、系统实现展示1、系统功能模块2、管理员功能模块四、毕设内容和源代码获取总结Java毕业设计-基于springboot开发的逍遥大药房管理系统-毕业论文+答辩PPT(附源代码......
  • Java毕业设计-基于springboot开发的网上图书商城平台-毕业论文+答辩PPT(附源代码+演示
    文章目录前言一、毕设成果演示(源代码在文末)二、毕设摘要展示1、开发说明2、需求分析3、系统功能结构三、系统实现展示1、系统功能模块2、管理员功能模块3、卖家功能模块四、毕设内容和源代码获取总结Java毕业设计-基于springboot开发的网上图书商城平台-毕业论文+答......
  • springBoot项目部署整合阿里云https证书报错
    springBoot项目部署整合阿里云https证书一直报错Keystore wastamperedwithor keystorepasswordwasincorrect  在百度没有找到原因,后来在B站上看到大佬说是这个原因,试了一下果然成功了,记录一下。原因是:阿里云的ssl配置yml的密码要用这个格式:key-store-password我配......
  • AI图片换脸技术:科技背后的魔法与伦理挑战
    引言:近年来,随着人工智能(AI)技术的迅猛发展,图片换脸技术作为其中一个引人瞩目的应用,已经成为了公众关注的焦点之一。这项技术利用深度学习和计算机视觉算法,能够将一个人的面部特征迁移到另一个人的脸上,产生逼真的效果。虽然在技术上令人叹为观止,但其背后也存在着诸多深层次的伦......
  • AI图片换脸技术:科技背后的魔法与伦理挑战
    引言:近年来,随着人工智能(AI)技术的迅猛发展,图片换脸技术作为其中一个引人瞩目的应用,已经成为了公众关注的焦点之一。这项技术利用深度学习和计算机视觉算法,能够将一个人的面部特征迁移到另一个人的脸上,产生逼真的效果。虽然在技术上令人叹为观止,但其背后也存在着诸多深层次的......
  • java项目:基于springboot实现的MBTI性格测试系统(分前后端)
    一、项目介绍本项目是一套基于springboot实现的个人性格测试系统,主要针对计算机相关专业的正在做bishe的学生和需要项目实战练习的Java学习者。包含:项目源码、数据库脚本等,该项目可以直接作为bishe使用。项目都经过严格调试,确保可以运行!二、技术实现和开发环境使用技术......