ABAP DUMP ERROR 24시

AppConfig란? , 사용방법(@bean 사용안하는 version) 본문

[WEB]Back-end/Spring MVC

AppConfig란? , 사용방법(@bean 사용안하는 version)

이운형 2022. 3. 8. 12:19
반응형

# 인프런 김영한의 스프링 핵심 원리 - 기본편을 개인적으로 정리한 글입니다.

 

정리

 

Q. AppConfig란?

=>전체 동작방식을 구성하기위해 객체를 생성하고 연결하는 클래스.// GMarket, 11번가, 아마존처럼 판을 깔아주는 느낌, 판매자들의 등록 취소를 관리해주는 느낌!

 

Q. Appconfig=IOC컨테이너 = DI(의존관계 주입) 컨테이너 = 어샘블러 =오브젝트 팩토리

애플리케이션 실행 시점(런타임)에 외부에서 실제 구현 객체를 생성하고 클라이언트에 전달해서 클라이언트와 서버의 실제 의존관계가 연결 되는 것을 의존관계 주입이라고 한다.

 

Q. Appconfig의 역할.

 

=>AppConfig는 애플리케이션의 실제 동작에 필요한 구현 객체를 생성한다.

=>AppConfig는 생성한 객체 인스턴스의 참조(레퍼런스)를 생성자를 통해서 주입(연결)해준다

 

 

살펴보기

 

애플리케이션의 전체 동작 방식을 구성(config)하기 위해, 구현 객체를 생성하고, 연결하는 책임을 가지는 별도의 설정 클래스이므로 다음 코드를 보자.

 

1> MemberService 분석

 

MemberService 사용시

MemberService  => MemberServiceImpl => MemoryMemberRespository 를 호출하게 되는 구조가 존재한다면,

 

public interface MemberService {

    void join(Member member);

    Member findMember(Long memberId);
}
 public class MemberServiceImpl implements MemberService {
//        private final MemberRepository memberRepository = new MemoryMemberRepository();

 

다음과 같이  AppConfig를 사용해서 생성과 연결을 관리해준다.

//    public class AppConfig {
//        public MemberService memberService() {
//            return new MemberServiceImpl(new MemoryMemberRepository());
//        }
//        public OrderService orderService() {
//            return new OrderServiceImpl(
//                    new MemoryMemberRepository(),
//                    new FixDiscountPolicy());
//        }
//    }

 

 

반응형
Comments