프레임워크/Spring
[SpringMVC] 요청 매핑, API 요청 매핑
요청 매핑 package hello.springmvc.basic.requestmapping; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.*; @Slf4j @RestController public class MappingController { @RequestMapping(value = "/hello-basic", method = RequestMethod.GET) public String helloBasic(){ log.info("helloBasic"); return "ok"; } @GetMapping(value = "/mapping-get-v1") public String mappingGetV1(){ lo..
스프링 컨테이너와 스프링 빈
스프링 컨테이너 생성되는 과정 ApplicationContext applicationContext = new AnnotationConfigApplicationContext(AppConfig.class); @Configuration public class AppConfig { @Bean public MemberService memberService(){ return new MemberServiceImpl(memberRepository()); } @Bean public OrderService orderService(){ return new OrderServiceImpl( memberRepository(), discountPolicy()); } @Bean ... ... } ApplicationContext를 ..
[Spring] @ResponseBody 어노테이션
@ResponseBody HTTP의 BODY에 문자 내용을 직접 반환 즉, 데이터만 전송할 경우 사용 ( API 방식 ) 객체를 return할 경우 기본 default가 json방식으로 데이터를 만들어서 http에 response 하는 게 기본! view Resolver 대신, HttpMessageConverter가 동작한다. 기본 문자 처리 StringHttpMessageConverter 기본 객체 처리 MappingJackson2HttpMessageConverter byte 처리 등등 기타 여러 HttpMessageConverter가 기본으로 등록되어 있음 @GetMapping("hello-string") @ResponseBody public String helloString(@RequestParam..
[Spring] Spring의 컨텍스트?
Chef Class package org.zerock.sample; import org.springframework.stereotype.Component; import lombok.Data; @Component @Data public class Chef { } Restaurant Class package org.zerock.sample; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import lombok.Data; import lombok.Setter; @Component @Data public class Restaurant { @Setter(onM..