목록Back-End/Spring Boot (35)
Wanna be Brilliant Full-Stack Developer
메시지를 같이 띄우기 위해서는 핸들러에 Map타입이니까 Map 밖에 리턴을 못한다. 두가지를 동시에 하고 싶을때는 package com.cos.photogramstart.web.dto; import java.util.Map; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @AllArgsConstructor @NoArgsConstructor @Data public class CMRespDto { private String message; private Map errorMap; } package com.cos.photogramstart.handler; import java.util.Map; impor..
@ResponseBody를 지우고 return을 하는것이아니라 throw new RuntimeException("유효성검사 실패함");을 강제로 발생시키면 이러한 화면이 나오는데 좋은 사용자 환경이 아니기 때문에 이 익셉션이 터진것을 가로채기를 할것이다? 핸들러라는 패키지를 만들것이다 ControllerExceptionHandler라는 클래스를 만들고 어노테이션 @ControllerAdvice를 모든 익셉션을 낚아 챈다. 낚아채면 응답을 해야하는데 데이터를 리턴을 하기 위해서 @RestController로 한다 package com.cos.photogramstart.handler; import org.springframework.web.bind.annotation.ControllerAdvice; impo..
가입 이름이나 이메일 입력하지 않고 가입하기를 하면 프론트단(required="required") 에서 막히게 되는데 왜 우리는 SignupDto.java에서 왜 @NotBlank를 하였는가? 그 이유는 우리가 컨트롤러에서 @PostMapping("/auth/signup") 을 할때 PostMan으로 요청을 하게 되면 프론트단에서 막는것이 안되기 떄문에 백엔드 단에서도 막아줘야한다. 이런것을 잘막으면 프로그램을 좀더 깔끔하게 작성가능하다. 이제는 회원가입창을 보여주는것이 아니라 오류창을 보여줄것이다. 컨트롤러 니까 무조건 리턴 타입이 String 이면 파일을 리턴한다 ( return "auth/signin" ;) 하지만 public @ResponseBody를 리턴타입 앞에 붙어있으면 데이터를 응답한다 이..