320.7. Spring Java Config


Spring은 XML Config를 사용하여 life를 함께 시작합니다. 그러나 일부 기능에서는 XML 사용을 선호하지 않으며, 대신 Spring JavaConfig 프로젝트와 함께 Guice를 생성하는 Java 코드를 사용합니다.

Camel을 사용하여 XML 또는 Java 구성 접근법을 사용할 수 있습니다. 원하는 대로 선택할 수 있습니다.

320.7.1. Using Spring Java Config

Camel 프로젝트에서 Spring Java Config를 사용하는 가장 쉬운 방법은 pom.xml에 다음을 추가하는 것입니다.

<dependency>
  <groupId>org.apache.camel</groupId>
  <artifactId>camel-spring-javaconfig</artifactId>
  <version>${camel-version}</version>
</dependency>
Copy to Clipboard Toggle word wrap

그러면 Spring JavaConfig 라이브러리에 종속성이 추가되고 Spring 내부에서 Camel을 구성하기 위한 도우미 클래스가 추가됩니다.

이 라이브러리는 전적으로 선택 사항입니다. Java Config와 함께 Camel을 함께 사용할 수 있습니다.

320.7.2. 설정

JavaConfig를 Camel과 함께 사용하는 가장 일반적인 경우는 라우터에서 사용할 경로 목록이 정의된 구성을 생성하는 것입니다.

@Configuration
public class MyRouteConfiguration extends CamelConfiguration {

    @Autowire
    private MyRouteBuilder myRouteBuilder;

    @Autowire
    private MyAnotherRouteBuilder myAnotherRouteBuilder;

    @Override
    public List<RouteBuilder> routes() {
        return Arrays.asList(myRouteBuilder, myAnotherRouteBuilder);
    }

}
Copy to Clipboard Toggle word wrap

Camel 2.13.0부터는 routes() 정의를 건너뛰고 Spring 컨텍스트에 있는 RouteBuilder 인스턴스로 돌아갈 수 있습니다.

@Configuration
@ComponentScan("com.example.routes")
public class MyRouteConfiguration extends CamelConfiguration {
}
Copy to Clipboard Toggle word wrap

320.7.3. 테스트

Camel 2.11.0 부터 CamelSpringJUnit4ClassRunnerCamelSpringDelegatingTestContextLoader 를 사용할 수 있습니다. Java Config 및 Camel 통합을 테스트하는 것이 좋습니다.

RouteBuilder 인스턴스 컬렉션을 생성하려면 CamelConfiguration 도우미 클래스에서 파생되고 routes() 메서드를 구현합니다. routes() 메서드를 재정의하지 않는 경우 ( Camel 2.13.0부터)는 CamelConfiguration 이 Spring 컨텍스트에서 사용 가능한 모든 RouteBuilder 인스턴스를 사용합니다.

Java Config를 사용하는 다음 예제에서는 Camel 2.10 이하와의 Java Config 통합을 테스트하는 방법을 보여줍니다. JavaConfigContextLoader 는 더 이상 사용되지 않으며 CamelSpringDelegatingTestContextLoader 를 대신하여 Camel의 향후 버전에서 제거될 수 있습니다.

@ContextConfiguration 주석은 Spring Testing 프레임워크에 사용할 구성으로 ContextConfig 클래스를 로드하도록 지시합니다. 이 클래스는 Red Hat의 CamelContext를 구성한 Helper Spring Java Config 클래스인 SingleRouteCamelConfiguration 에서 파생된 다음 생성하는 RouteBuilder를 등록합니다.

맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat