• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

cglib질문 있습니다!

21.07.14 15:15 작성 조회수 180

1

이제 강의 막바지네요!
근데 질문이 있습니다!
강의 초반쯤에 배운거 같은데 원래 스프링이 bean을 생성할때 바이트코드를 조작해서 cglib를 통해 생성하는거 아니였나요?
영상 4분정도에 설명하시는 것은 마치 이때까지는 우리가 직접만든걸로 직접 등록이 된거지만 프록시를 이용한 경우에만 특수한경우로 cglib를 통한다 처럼 들려서요...
제가 헷갈린것인지 바로잡고 싶습니다 ㅠㅠ

답변 1

답변을 작성해보세요.

0

안녕하세요. 권형택님

cglib는 프록시와 관련될 때 사용합니다.

스프링이 bean을 생성할 때는 그냥 생성합니다.

그런데 아마 @Configuration 이 부분과 햇갈리신 것 같아요. 해당 부분을 다시 복습해보시길 권장드립니다.

감사합니다.

권형택님의 프로필

권형택

질문자

2021.07.16

감사합니다. 다시 듣고왔는데 configuration부분 에서는 이용해서 스프링이 가짜 객체를 만들어 싱글톤을 보장하는 것이기 때문에 cglib기술을 사용하는것이고 provider를 사용해야 할 때 나중에 생성될 객체를 위해 가짜 객체를 만들어놓기 위해 cglib기술을 사용하는 것이라고 보면 될까요?

후반오니까 확어려워지네요 잘따라가고 있다고 생각했는데 일단 로드맵대로 따라가고 처음부터 다시봐야겠어요!

네 Configuration에서는 스프링이 의존관계 주입을 위해서 메서드를 호출할 때 싱글톤을 보장하기 위해서 Configuration 클래스를 가짜 객체로 만들어줍니다^^

감사합니다.