SpringMVC中如何上傳文件

小億
82
2024-04-18 15:55:11
欄目: 編程語言

在SpringMVC中上傳文件通常使用MultipartFile對(duì)象來接收文件,以下是一個(gè)簡單的文件上傳示例:

  1. 在Controller中編寫文件上傳方法:
@Controller
public class FileUploadController {

    @PostMapping("/upload")
    public String handleFileUpload(@RequestParam("file") MultipartFile file) {
        // 判斷文件是否為空
        if (file.isEmpty()) {
            return "redirect:/error";
        }

        try {
            // 獲取文件名
            String fileName = file.getOriginalFilename();
            // 獲取文件內(nèi)容
            byte[] bytes = file.getBytes();

            // 保存文件
            Path path = Paths.get("uploads/" + fileName);
            Files.write(path, bytes);

            return "redirect:/success";
        } catch (IOException e) {
            e.printStackTrace();
            return "redirect:/error";
        }
    }
}
  1. 在頁面中添加文件上傳表單:
<form method="POST" action="/upload" enctype="multipart/form-data">
    <input type="file" name="file" />
    <input type="submit" value="Upload" />
</form>
  1. 在Spring的配置文件中添加MultipartResolver配置:
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
    <property name="maxUploadSize" value="10485760" /> <!-- 設(shè)置最大上傳文件大小,單位為字節(jié) -->
</bean>

以上代碼演示了如何在SpringMVC中上傳文件,通過MultipartFile對(duì)象接收文件并保存到指定路徑。在實(shí)際應(yīng)用中,還可以對(duì)文件大小、文件類型等進(jìn)行驗(yàn)證。

0