2017-11-09 15 views
0

자바 코드에 Spring Bean을 등록하기로 결정 했으므로 가능한 최선의 방법으로 어떻게 수행해야하는지 알고 싶습니다.컨텍스트에서 @Beans를 등록하기 위해 Spring @Configuration을 배치하는 것이 좋습니다.

@Configuration 
public class Config { 
@Bean 
public BeanType getBeanType() { 
return new BeanType(); 
} 
    } 

을하지만 : 나는 그것을 추가하여 작업 할 수 있습니다 -

내가 생성자를 통해 deps를 주입 (나는 거의 안티 패턴을 고려 @Autowire를 사용하지 않음). @Configuration 부분은 어디로 가야합니까?

패키지별로 구성 클래스를 만들어야합니까? (패키지/도메인에서 코드를 닫으려고 시도)

그들을 사용중인 클래스의 내부 클래스에 등록해야합니까?

어떻게해야합니까? 인터넷은 반 패턴으로 가득차 있습니다. 신중하게 생각하는 방식을 찾고 싶습니다.

미리 조언 해 주셔서 감사합니다.

답변

0

나는 의견을 기반으로하지만, 우리의 실천을 설명하기로 결정했기 때문에 Close를 클릭해야 할지를 망설였다.

여러 구성 클래스를 정의하고 예를 들어 논리적으로 분할합니다. - Db/hibernate/Transaction을위한 하나의 설정, Queue/Listeners를위한 또 다른 설정, Logs와 관련된 모든 것에 대한 하나의 설정, 그리고 No SQL 연결을위한 설정 등.

+0

고맙습니다. 정면과 같은? .xml 기반 빈 구성을 사용하는 많은 응용 프로그램에서 연습 했으므로 프로젝트를 위해 한 곳에서 모두 배치한다고 가정합니다. 나는 동의 할 수있다, 그것은 의견을 근거로 할 수있다. 그러나 약간의 의견은 그 다음 다른 것을 통하여 더 많이 생각된다 :) –

+0

나를위한 주된 규칙은 가능성을 쉽게 configs를 추가하거나 삭제하는 것 인 것이다. 예 : No SQL - Mongo를 소개하고 싶습니다. 별도의 설정이 될 것입니다. 예를 들어 테스트. – StanislavL

+0

좋은 지적, 고마워. 테스트의 가독성과 손쉬운 배제는 실제로 분명한 아이디어입니다. –