본문 바로가기
spring

스프링, 바이트코드 조작, Configuration, 다이나믹 프록시

by kcj3054 2021. 12. 29.

바이트코드 조작, Configuration

  • 스프링에서는 싱글톤을 보장 해준다 어떻게?? 같은 것을 여러번 호출하게 되는데 왜 그렇게 되는거지?
  • 만약 appConfig라는 클래스가 있다면 그것을 Bean으로 등록을 한다, 여기서 @Configuration을 확인해야한다

    • @Configuration를 넣고 그후에 bean.getClass를 출력해보면 순수한 클래스 이름이 아닌 뒤에 xxxCGLIB가 붙어 있다

    • 이것은 스프링이 바이트코드 조작 라이브러리를 써서, appConfig 클래스를 상속 받는 임의의 다른 클래스를 만들고 그것을 빈으로 등록을 한것이다.

  • 여기서 Configuration를 빼면 Bean 등록이 안되나? 그것은 아니지만 Configuration이 없기에 바이트코드를 조작하지 않아서 싱글톤을 보장해주지는 않는다.

다이나믹 프록시

'spring' 카테고리의 다른 글

빈 lifecycle, PrototypeBean  (0) 2021.12.29
AOP  (0) 2021.12.29
dto , mvc layerd architecture, Timestamped  (0) 2021.12.02
ocp, di, srp  (0) 2021.12.02
spring,... intellij 디버그  (2) 2021.11.30