스프링 부트 기본기 한시간에 끝내기! [ 스프링 부트(Spring Boot) 기초 강의 ]

이 강의를 참고하여 공부하였음

[SpringBoot] - 스프링 부트, spring MVC 패턴 동작

추가 참고자료

[Spring Boot] MVC 정의 및 예제

이것도 참고

먼저,

스프링 vs 스프링부트


aspect of DI (Dependency Injection)

@RestController
public class NoDIController {
	private MyService service = MyServiceImpl();
	
	@GetMapping("/hello")
	public String getHello(){
		return service.getHello();
	}
}

위 코드는 DI를 사용하지 않은 코드임

@Service
public class MyServiceImpl implements MyService {
	@Override
	public String getHello(){
		return "Hello";
	}
}

@RestController
public class DIController {
	MyService myService;

	@Autowired
	public DIController(MyService myService) {
		this.myService = myService;
	}

	@GetMapping("/hello")
	public String getHello(){
		return myService.getHello();
	}
}

반면 이 코드는 위 코드의 단점을 해결하였음