웹 브라우저의 경우, 다수의 사용자가 동시에 접근하는 경우가 많다.
만약 웹에 접속하는 고객이 동시에 요청할 때마다 새로운 객체를 생성한다면,
메모리 낭비도 너무 심할것!
=> 따라서 객체가 딱 1개만 생성되어 해당 인스턴스를 공유하여 사용할 수 있도록 설계하는 것이
싱글톤 패턴이다!
싱글톤 패턴이란,클래스의 인스턴스가 단 1개만 생성되는 것이다.
스프링에서는 싱글톤 레지스트리를 이용해 싱글톤 객체를 생성하고 관리한다.
따라서, 고객에 요청을 할 때마다 객체를 생성하는 것이 아니라, 이미 만들어진 객체를 공유하여 효율적으로 재사용한다.

빈이 붙은 메서드마다, 이미 빈이 존재하면 빈을 반환하고
빈이 등록되지 않았으면 인스턴스를 새로 생성하여 빈에 등록한 후 반환한다.