이미지랑 dto랑 같이 입력 받고 싶은데 postman에서는 multipartFile은 이미지로 dto는 json으로 따로 입력이 가능하지만 스웨거에서 실행할때는 한 번에 안뜬다....😭
그래서 @RequestBody대신에 @ModelAttribute를 사용해서 입력 받기!
Controller
@PostMapping(value = "/write")
public BaseResponse<BaseResponseStatus> uploadPosting(@RequestPart MultipartFile image,
@ModelAttribute PostingDto postingDto) throws IOException {
try {
postingService.uploadPosting(image, createPostingDto);
return new BaseResponse<>(BaseResponseStatus.SUCCESS);
} catch (BaseException exception) {
return new BaseResponse<>(exception.getStatus());
}
}
Dto
import lombok.*;
import java.sql.Date;
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class CreatePostingDto {
private String title;
private String content;
private Date recordDate;
private CreatePlaceDto createPlaceDto;
private int visibilityStatusCode;
}
Swagger로 본 모습 (일부화면)
이렇게 dto랑 multiparFile을 같이 입력 받을 수 있다 ㅎㅎ
s3에도 잘 올라간다!!
'Spring' 카테고리의 다른 글
[Spring] Service, ServiceImpl 구조 (0) | 2023.06.30 |
---|---|
[Spring] 해시태그 기능 DB + JPA 설계 (0) | 2023.06.20 |
[Spring][Redis] RedisConnectionException : NOAUTH Authentication required 에러 (0) | 2023.02.10 |
SpringBoot [Bean Validation] (0) | 2022.07.21 |
Thymeleaf 타임리프 기본 기능 정리 [텍스트/변수/반복/속성] (0) | 2021.10.15 |