자바(35)
-
스프링 공식 문서 뿌수기(8), Model
이번에는 지난 포스팅에서 언급한 Model에 대해서 한번 정리해보고자 한다. Model @ModelAttribute 어노테이션을 사용하는 경우에는 WebDataBinder를 통해서 request 받은 값을 객체로 바인딩할 수 있다. @ControllerAdvier 어노테이션을 사용한 컨트롤러 또한 @ModelAttribute를 사용할 수 있다. @ModelAttribute 어노테이션을 사용한 메서드는 @ModelAttribute나 request body와 연관된 어노테이션을 제외한 @RequestMapping에서 사용하는 메서드들을 지원한다. request body와 관련되었다는 것은 아마 @RequestBody와 같이 Jackson 라이브러리를 사용하는 어노테이션을 의미하는게 아닐까싶다. 아래 예시는 ..
2023.04.27 -
스프링 공식 문서 뿌수기(7), Hanlder Methods - 데이터 바인딩 과정
5, 6번 시리즈는 잠깐 빠져서 IoC Container에 대해 포스팅했다. 이번에는 다시 돌아와서 Annotated Controller의 Handler Methods에 대해 정리해보도록 하겠다! (진작 했어야했는데~~) Handler Methods @RequestMapping 어노테이션을 사용하면 여러가지 핸들러 메서드를 사용할 수 있다. Method Arguments 메서드 인자로는 정말 다양한 타입의 인자들이 들어갈 수 있다. 너무 많기 때문에 해당 부분에 대해서는 링크를 남기도록 하겠다. https://docs.spring.io/spring-framework/docs/current/reference/html/web.html#mvc-ann-methods 지금 단계에서 자주 사용하는 내용들만 먼저 정..
2023.04.26 -
스프링 공식 문서 뿌수기(6), ComponentScan이 뭐야?
이전 포스팅에서 빈을 등록할 때 @Component 어노테이션을 사용하는 경우에는 ComponentScan을 사용해서 등록해야한다고 했다. 사실 어노테이션 뿐만이 아니라 Java code로 Configuration을 등록하는 방법도 있는데, 이 때에도 ComponentScan을 사용할 수 있다. 2023.04.24 - [자바/스프링] - 스프링 공식 문서 뿌수기(5), ApplicationContext란? 이번 포스팅에서는 ComponentScan에 대해서 알아보도록 하겠다. 공식 문서 상에서도 내용이 그리 많지 않아서 아마 짧은 글이 되지 않을까싶다. ComponentScan 우선 ComponentScan이 무엇인지부터 알아보도록 하자. 언제나 그랬듯이 문서부터 먼저 확인해보자. 이는 Component..
2023.04.25 -
스프링 공식 문서 뿌수기(5), ApplicationContext란?
스프링 공식 문서 뿌수기 시리즈를 하고 있던 중 Annotated Controller 파트 초반에 ApplicationContext와 관련된 내용이 등장했다. 2023.04.17 - [자바/스프링] - 스프링 공식 문서 뿌수기(2), Spring MVC의 Annotated Controllers - 1 스프링 공식 문서 뿌수기(2), Spring MVC의 Annotated Controllers - 1 지난주 금요일 우테코 레벨 2 피드백 강의 시간에 브리가 각 미션마다 크루들이 공부했으면 하는 커리큘럼에 대해 알려줬다. 그 내용을 하나씩 정리해보려고 한다. 우선 스프링의 가장 기본적인 konghana01.tistory.com 당시 bean을 ApplicationContext에 등록해서 auto-detect..
2023.04.24 -
스프링 공식 문서 뿌수기(4), Spring MVC의 Annotated Controllers - DataBinder
원래는 중간에 exceptionHandler가 있지만 이전 내용에서 DataBinder에 대한 내용이 있어서 먼저 정리했다. DataBinder DataBinder는 이름에서도 알 수 있듯이 Request parameters를 모델에 바인딩하는 역할을 하는 것이다. @InitBinder는 WebDataBinder를 초기화하는 역할을 한다. 즉, @InitBinder 어노테이션을 가진 메서드를 사용한다면 데이터를 모델로 바인딩할 수 있다. @RequestParam이나 @PathVariable, @ModelAttribute 어노테이션들은 request로 전달받은 값을 다른 타입으로 바인딩을 해주는 과정을 거친다. 이때 WebDataBinder라는 것을 만들어서 전달받은 값을 매핑하게 된다. @InitBind..
2023.04.22 -
스프링 공식 문서 뿌수기(3), Spring MVC의 Annotated Controllers - RequestMapping
이전 글에 이어서 Annotated Controllers의 RequestMapping에 대해 본격적으로 글을 작성해보려고 한다. Request Mapping @RequestMapping 어노테이션은 요청받는 URL 주소를 매핑해주는 역할을 한다. 일반적으로는 메서드보다는 Controller 클래스에 직접 어노테이션을 붙여서 url 주소를 매핑하는 역할을 한다. 메서드에는 조금 더 명확하게 이를 표현하기 위해 @GetMapping이나 @PostMapping 어노테이션으로 Http 메서드까지 포함한 어노테이션을 사용하는 것이 좋다. @RequestMapping: 일반적으로 클래스에 붙인다. @GetMapping, @PostMapping: 메서드에 붙인다. @GetMapping과 @PostMapping은 @R..
2023.04.21