说明:创建UploadController.java
- package com.itheima.controller;
-
- import com.itheima.pojo.Result;
- import lombok.extern.slf4j.Slf4j;
- import org.springframework.web.bind.annotation.PostMapping;
- import org.springframework.web.bind.annotation.RestController;
- import org.springframework.web.multipart.MultipartFile;
-
- import java.io.File;
- import java.io.IOException;
-
- @Slf4j
- @RestController
- public class UploadController {
-
- @PostMapping("/upload")
- public Result upload(String name, Integer age, MultipartFile image) throws IOException {
- log.info("文件上传{},{},{}", name, age, image);
- // 将文件存储在服务器的磁盘目录中 E:\aWeb\afterWeb\javaweb\images
- // 获取原始文件名
- String originalFilename = image.getOriginalFilename();
- // 拼接路径
- image.transferTo(new File("E:\\aWeb\\afterWeb\\javaweb\\images\\" + originalFilename));
- return Result.success();
-
- }
- }


说明:解决上传文件名相同会被替换。使用UUID生成随机的文件名
说明:定义UploadController.java
- package com.itheima.controller;
-
- import com.itheima.pojo.Result;
- import lombok.extern.slf4j.Slf4j;
- import org.springframework.web.bind.annotation.PostMapping;
- import org.springframework.web.bind.annotation.RestController;
- import org.springframework.web.multipart.MultipartFile;
-
- import java.io.File;
- import java.io.IOException;
- import java.util.UUID;
-
- @Slf4j
- @RestController
- public class UploadController {
-
- @PostMapping("/upload")
- public Result upload(String name, Integer age, MultipartFile image) throws IOException {
- log.info("文件上传{},{},{}", name, age, image);
- // 将文件存储在服务器的磁盘目录中 E:\aWeb\afterWeb\javaweb\images
- // 获取原始文件名
- String originalFilename = image.getOriginalFilename();
- // 构建新的文件名
- String newFileName=UUID.randomUUID().toString()+originalFilename.substring(originalFilename.lastIndexOf("."));
- // 构建唯一的文件名(不能重复) uuid
- // 拼接路径
- image.transferTo(new File("E:\\aWeb\\afterWeb\\javaweb\\images\\" + newFileName));
- return Result.success();
-
- }
- }


2.4配置上传文件大小
说明:SpringBoot中,文件上传,默认单个文件允许最大大小为1M。需要配置才行!
- #配置上传文件的大小限制
- spring.servlet.multipart.max-file-size=10MB
- #配置单个请求的最大 大小的限制(一次请求中是可以上传多个文件)
- spring.servlet.multipa
- #驱动类名称
- spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
- #数据库连接的url
- spring.datasource.url=jdbc:mysql://localhost:3306/tlias
- #连接数据库的用户名
- spring.datasource.username=root
- #连接数据库的密码
- spring.datasource.password=123456
-
- #配置mybatis的日志, 指定输出到控制台
- mybatis.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
- #开启mybatis的驼峰命名自动映射开关 a_column ------> aCloumn
- mybatis.configuration.map-underscore-to-camel-case=true
-
- #配置上传文件的大小限制
- spring.servlet.multipart.max-file-size=10MB
- #配置单个请求的最大 大小的限制(一次请求中是可以上传多个文件)
- spring.servlet.multipart.max-request-size=100MB
说明:常见的方法
