首页 > 其他分享 >SpringBoot文件上传

SpringBoot文件上传

时间:2023-04-22 17:01:19浏览次数:36  
标签:文件 SpringBoot photo File import path out 上传 String

application.yml配置

spring:
  #   文件上传配置
  servlet:
    multipart:
      max-file-size: 10MB
      max-request-size: 10MB
  web:
    resources:
      static-locations: /upload/

代码

package com.haoyang.Controller;

import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletRequest;
import java.io.File;
import java.io.IOException;

@RestController
public class FileUploadController {

    @PostMapping("/upload")
    public String up(String nickname, MultipartFile photo, HttpServletRequest request) throws IOException {
        System.out.println(nickname);
        // 获取图片的原始名称
        System.out.println(photo.getOriginalFilename());
        // 取文件类型
        System.out.println(photo.getContentType());

        String path = request.getServletContext().getRealPath("/upload/");
        System.out.println(path);
        saveFile(photo,path);
        return "上传成功";
    }

    //
    public void saveFile(MultipartFile photo,String path) throws IOException {
//       判断存储的目录是否存在,如果不存在则创建
        File dir = new File(path);
        if(!dir.exists()){
//          创建目录
            dir.mkdir();
        }

        File file = new File(path+photo.getOriginalFilename());
        photo.transferTo(file);
    }
}


标签:文件,SpringBoot,photo,File,import,path,out,上传,String
From: https://www.cnblogs.com/lzp110119/p/17343404.html

相关文章

  • SpringBoot+Mybatis-Plus+EasyExcel
    首先建立一个springboot项目,导入依赖<!--MyBatisPlus依赖--><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.4.2</version......
  • proto文件详解
    一、message介绍message:protobuf中定义一个消息类型是通过关键字message字段指定的。消息就算需要传输的数据格式的定义。message关键字类似于C++中的class,Java中的Class,go中的struct例如:messageUser{ stringusername=1; int32age=2;}在消息中承载的数据分别对应于每一......
  • nginx配置文件
    关于Nginx的核心配置文件nginx.confusernginx;worker_processesauto;error_log/var/log/nginx/error.lognotice;pid/var/run/nginx.pid;events{worker_connections1024;}http{include/etc/nginx/mime.types;default_typeapplication/oct......
  • react18中antd的Upload组件上传头像,并且拿到服务器返回的头像的url地址在页面中显示头
    业务需求:上传头像,上传完毕后拿到头像的url,把头像展示在页面中,最终把头像url和其他用户信息一起发送给服务器 上传头像流程 导入Upload组件和图标(一个加号,一个加载中)import{Upload}from'antd';import{PlusOutlined,LoadingOutlined}from'@ant-design/ic......
  • 如何把Mac上的文件传输到Windows电脑上
    前提是两台电脑在同一个局域网内!!!!1、在Windows上新建共享文件夹 2、打开Windows的smb共享支持3、打开访达->前往->连接服务器4、点击“连接”,成功后访达左边菜单栏就会出现Windows的共享文件夹5、把MAC里的文件就可直接拖动至Windows共享的文件夹里,Windows上就可以看到......
  • 手写 PE 文件
    手写PE文件此内容是逆向工程实验内容,对应完整PE文件结构更加复杂此处是借助C语言完成的,因为真正手写没有意义真正手写查错困难核心目的是了解PE文件的大概结构#include<stdio.h>#include<stdlib.h>#include<string.h>#include<windows.h>#include<winnt......
  • 文件管理
    要实现文件管理功能,我们可以使用toga.FileDialog控件来选择文件和文件夹,使用os模块来操作文件。以下是一个简单的文件管理器的代码示例:importosimporttogaclassFileManager:  def__init__(self):    self.main_window=toga.MainWindow(title='FileManager......
  • 企业网盘文件管理介绍
    在当今的数字时代,数据存储和管理已经成为任何商业组织的重要组成部分。随着云技术的出现,企业现在可以在世界任何地方存储和访问他们的数据。企业网盘工具就是一个不错的文件解决方案~ZohoWorkdrive是一个在线文件存储和协作平台,旨在简化团队的文档管理。它提供安全可靠的文件共享......
  • SQL注入,命令注入,文件操作
    SQLInjection:是一种常见的Web安全漏洞,gongji者利用这个漏洞,可以访问或修改数据,或者利用潜在的数据库漏洞进行gongji所谓的万能密码:本质上就是SQL注入的一种利用方式一次SQL注入的过程:1.获取用户请求参数         2.拼接到代码当中3.SQL语句按照我们构造参数的语......
  • C++调用自定义源文件函数
    C++调用自定义源文件函数的步骤如下:在需要调用函数的源文件中包含自定义源文件的头文件。例如,如果需要调用名为myfunc.cpp的自定义源文件中的函数,则需要在调用该函数的源文件中包含myfunc.h头文件。编译自定义源文件。如果使用命令行编译,可以使用以下命令编译自定义源文件并生成......