Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- KPT
- 스파르타내일배움캠프
- 회고록
- Java
- static
- 감사기록
- 인스턴스
- #내일배움캠프
- #스파르타내일배움캠프TIL
- Git
- 객체지향 언어
- 스레드
- #스파르타내일배움캠프
- 내일배움캠프
- 스파르타내일배움캠프TIL
- Diary 해우소
- 메서드
- TiL_1st_0419
- 변수의 다양성
- Token
- 포맷은 최후의 보루
- 생성자
- JVM
- 성장기록
- diary
- Java의 이점
- Github_token
- GitHub
- 클래스
- 해우소
Archives
- Today
- Total
몬그로이
TIL_072 본문
한 controller 에서 타입을 받아서
그에 따라 다른 타입의 게시글 작성되도록 설정하기
Enum 으로 게시글의 타입을 구분해 놓았기 때문에
입력받은 pathVariable 을 Enum으로 변환하여 해당 Service 단의 메서드로 연결시켜야 한다
스프링에서
StringToEnumConverterFactory
를 지원하고 있기 때문에 매개변수에서 바로 사용이 가능하다
@PostMapping
public ResponseEntity<ResponseDataDto<?>> createFeed (
@PathVariable final String group_name,
@RequestParam(value = "category") FeedEnumCategory category,
@RequestPart(value = "file", required = false) MultipartFile file,
//@AuthenticationPrincipal UserDetailsImpl UserDetails,
@Valid @RequestBody final FeedRequestDto request
) {
ResponseDataDto<?> responseDto;
switch(category) {
case ARTIST -> responseDto = feedService.createFeed(group_name, /*UserDetails*/, file, request );
case NOTICE -> responseDto = feedService.createNotice(group_name, file, /*UserDetails*/, request);
case SCHEDULE -> responseDto = feedService.createSchedule(group_name, UserDetails,request);
default -> throw new IllegalArgumentException();
}
return ResponseEntity.ok(new ResponseDataDto<>(ResponseStatus.CREATED, responseDto));
}
Trouble Shooting - 팀장님
회원가입을 구현했는데
테이블이 한 칸씩 밀리거나 다른 값이 입력 되는 문제
User 객체 생성자 매개변수 순서 맞추기
후 정상 작동
https://kapentaz.github.io/java/spring/Enum-and-@RequestParam-in-Spring/#