DI (Dependency Injection) - 의존성 주입DI란?객체가 필요로 하는 의존성을 스프링 컨테이너가 주입하는 설계 패턴입니다.DI는 IoC의 구체적인 구현 방식 중 하나로, 객체 간의 의존성을 스프링 컨테이너가 자동으로 설정해줍니다.DI의 핵심객체 간의 의존성을 스프링 컨테이너(ApplicationContext)가 관리.객체를 필요로 하는 클래스는 의존성을 직접 생성하지 않고 외부에서 주입받음주입 방법: 생성자, 필드, Setter(메서드)를 통해 이루어짐DI의 장점결합도 감소클래스 간의 강한 의존성을 없애고 유연성을 높임객체가 내부의 의존성을 생성하지 않으므로, 다른 객체로 쉽게 교체 가능테스트 용이성DI를 통해 실제 객체 대신 Mock 객체를 주입하여 유닛 테스트를 쉽게 작성 가능재사용..