반응형
위 코드를 보면 new 키워드로 객체를 반환하고 있다. 그렇다면 orderService()를 2번 호출하면 OrderService와 OrderRepository가 2번씩 생성되지 않을까? 결론부터 말하면 아니다. orderService()와 orderRepository()가 호출될 때 위 처럼 메시지가 출력되도록 했다. 어떻게 나올까? 2번씩 호출되는 것이 아니라 1번 씩 호출된다. 즉 싱글톤이 보장되었다. @Configuration 어노테이션 @Configuration 클래스 내에 정의된 메소드들 중 @Bean 어노테이션이 붙은 메소드들은 스프링 컨테이너에 의해 빈(bean)으로 등록되고 이러한 빈들은 스프링 컨테이너에 의해 관리된다. 또한 @Configuration 어노테이션이 붙은 클래스는 스프링 ..
Spring은 왜 싱글톤을 고집할까? Spring은 온라인 서비스 기술을 지원하기 위해 생겨났다. 대부분의 온라인 서비스는 웹 애플리케이션으로 이루어져있다. 요즘은 웹이 아닌 어플이 대세 아니야? 라고 할 수 있다. 하지만 대부분의 회사들은 회사를 소개하거나 문의를 받는 웹 페이지가 꼭 하나씩 있다. 그렇다고 앱을 만들지 못하는 것은 아니다. 필자가 앱을 개발해보진 않았지만 Kotlin + Spring을 사용하면 앱 서비스를 개발할 수 있다. 그렇다면 왜 Spring이 싱글톤을 고집하는가? 이 이유는 바로 웹 애플리케이션은 보통 여러 고객들이 동시에 요청을 보내기 때문이다. 싱글톤이란? 단 하나의 유일한 객체를 만들기 위한 코드 패턴이다. 똑같은 인스턴스가 필요할 때, 똑같은 인스턴스를 새로 만들지 않고..
내 블로그 - 관리자 홈 전환 |
Q
Q
|
---|---|
새 글 쓰기 |
W
W
|
글 수정 (권한 있는 경우) |
E
E
|
---|---|
댓글 영역으로 이동 |
C
C
|
이 페이지의 URL 복사 |
S
S
|
---|---|
맨 위로 이동 |
T
T
|
티스토리 홈 이동 |
H
H
|
단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.