[英]How To Mapping Multipart file to DTO using Spring Boot for incoming request
我有這個 DTO 請求 Class
Public Class MyRequestDTO(){
private String name;
private MultipartFile docPic;
}
我想在 controller 中檢索
@PostMapping("/test")
public String test(@RequestBody MyRequestDTO dto){
system.out.print(dto.getdocPic.getOriginalFileName());
return "success;
}
但是當我嘗試顯示這個新請求的文件時總是得到 javaNullexception,在 DTO 中映射多部分文件是否正確?
使用最新的 spring 啟動,我們有一個沒有 @RequestBody 注釋的運行示例,所以試試這個:
@PostMapping("/test")
public String test(MyRequestDTO dto){
如果這不起作用,下一個你應該仔細檢查的地方是你的請求。 特別是Content-type
。 上面的簽名適用於內容類型為: multipart/form-data
的請求
您收到 javaNullexception 是因為您收到 MyRequestDTO dto 作為 null 或 dto object 的某些屬性指向 null。
所以在調用null object上的getter方法之前請務必確定。
首先得到 dto.getdocPic 沒有指向 null。
@PostMapping("/test")
public String test(@RequestBody MyRequestDTO dto){
if(dto.getdocPic() != null){
system.out.print(dto.getdocPic().getOriginalFileName());
}
return "success;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.