Static Util

    @Component와 Static 메소드 중 Utility Class는 어디에 만들까?

    @Bean과 @Component는 기본적으로 다른 클래스에 종속성이 있을 때 사용한다는 공통점이 존재한다. 그 중에 @Bean은 메소드 단위에 쓰이며 외부 라이브러리에 종속성이 있을 때 사용한다. @Component는 클래스 단위에 쓰이며 내부에 종속성 있을때, 즉, 내가 만든 클래스를 사용하고 싶을 때 쓸 수 있다. 하지만 여기서 얘기하고 싶은건 Util 함수에 관한 이야기인데, @Component로도 Utility 클래스를 만들 수 있고 Static 클래스로도 만들 수 있기에 어떠한 차이가 있는지 알아보았다. Static Static 메소드는 인자가 동일할 경우 항상 동일한 결과를 리턴해야 한다. 이 규칙을 지킬 수 없으면 Bean으로 만들어야 한다. 이것이 이뤄지려면 함수 안에서는 외부 자원에 대한..