묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
RequestParam과 PathVariable의 차이
안녕하세요 수업들으면서 RequestParam과 PathVariable의 차이가 궁금해서 질문남깁니다.두 어노테이션 모두 클라이언트에 보낸 값들을 서버부분에서 가지고오는데 두 어노테이션을 언제 어떻게 구분하는지 헷갈려서 질문드립니다.
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
컨트롤러 파라미터와 DTO에 대한 질문입니다.
[질문 내용]안녕하세요. 컨트롤러 파라미터에 대해서 질문이 있습니다. 보통 컨트롤러에서 @RequestBody로 DTO를 받는데요. 개인 프로젝트를 진행하면서 ,DTO 클래스를 계속 생성하게 되면 DTO파일도 많아지는 경향이 있다고 느꼈습니다. 전달받아야 할 파라미터가 1개인 경우, DTO클래스를 생성하는 것 대신, @RequestParam 혹은 Map을 활용하는 방법이 있는데요. @RequestParam을 사용하면 옵션을 줄 수 있다는 점, 올바르지 않은게 오면 400 코드를 준다는 점 정도가 다른 점이라고 생각합니다. 둘이 큰 차이가 없다고 생각하는데, Map을 사용하는 것에 대해 부정적인 의견도 많이 있는 것 같습니다. 한 개의 파라미터를 받기 위해 어느 방법을 사용하는 것이 효율적일까요? 상황마다 다른지, 보통 어떤식으로 처리하는지 궁금합니다. 감사합니다.
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
쿼리파라미터에 공백문자가 들어갈때 유효성검증은 어떻게 해야할까요?
@RequestParam을 통해 파라미터를 매핑시켜주는것을 학습하는 와중에 null이 아닌 공백문자 ("")관련해서 질문이 있습니다. required로 공백문자는 검사할수 없기에 조심해야한다고하셨는데, 이를 그럼 어떻게 처리를 해야할까요? 단순하게 생각하면 컨트롤러에서 if문으로 공백문자 검사를 하는건데, 그정도로 끝내는건지 아니면 다른 방식인지 궁금합니다. 제 경우에는 WrapperClass로 Integer Price 라면 Price 라는 객체를 만들어서 그안에서 생성자부분에서 유효성검증을해버리니 400에러가 발생하는데, 이를 ExceptionHandler를 통해 해결하는 건 나쁘지않은 방법인지도 고민됩니다.