307.3. Spring Boot 자동 구성
구성 요소는 아래에 나열된 15 가지 옵션을 지원합니다.
| 이름 | 설명 | 기본 | 유형 |
|---|---|---|---|
| camel.component.sjms.connection-client-id | 기본 org.apache.camel.component.sjms.ConnectionFactoryResource를 사용할 때 사용할 클라이언트 ID입니다. | 문자열 | |
| camel.component.sjms.connection-count | 이 구성 요소에서 시작된 끝점에 사용할 수 있는 최대 연결 수 | 1 | 정수 |
| camel.component.sjms.connection-factory | SjmsComponent를 활성화하려면 ConnectionFactory가 필요합니다. 직접 설정하거나 ConnectionResource의 일부로 설정할 수 있습니다. 옵션은 javax.jms.ConnectionFactory 유형입니다. | 문자열 | |
| camel.component.sjms.connection-max-wait | 기본 org.apache.camel.component.sjms.jms.ConnectionFactoryResource를 사용할 때 풀이 소진될 때 최대 대기 시간(밀리초)을 차단하고 대기합니다. | 5000 | long |
| camel.component.sjms.connection-password | 기본 org.apache.camel.component.sjms.jms.ConnectionFactoryResource를 사용할 때 사용할 암호입니다. | 문자열 | |
| camel.component.sjms.connection-resource | ConnectionResource는 ConnectionFactory에 대한 사용자 지정 및 컨테이너 제어를 허용하는 인터페이스입니다. 자세한 내용은 플러그형 연결 리소스 관리를 참조하십시오. 옵션은 org.apache.camel.component.sjms.jms.ConnectionResource 유형입니다. | 문자열 | |
| camel.component.sjms.connection-test-on-borrow | 기본 org.apache.camel.component.sjms.jms.ConnectionFactoryResource를 사용하는 경우 풀에서 반환하기 전에 각 javax.jms.Connection을 테스트해야 합니다. | true | 부울 |
| camel.component.sjms.connection-username | 기본 org.apache.camel.component.sjms.jms.ConnectionFactoryResource를 사용할 때 사용할 사용자 이름입니다. | 문자열 | |
| camel.component.sjms.destination-creation-strategy | 사용자 정의 DestinationCreationStrategy를 사용하려면 다음을 수행합니다. 옵션은 org.apache.camel.component.sjms.jms.DestinationCreationStrategy 유형입니다. | 문자열 | |
| camel.component.sjms.enabled | sjms 구성 요소 활성화 | true | 부울 |
| camel.component.sjms.header-filter-strategy | 사용자 정의 org.apache.camel.spi.HeaderFilterStrategy를 사용하여 Camel 메시지로의 헤더를 필터링합니다. 옵션은 org.apache.camel.spi.HeaderFilterStrategy 유형입니다. | 문자열 | |
| camel.component.sjms.jms-key-format-strategy | JMS 키를 인코딩 및 디코딩하여 JMS 사양을 준수할 수 있도록 플러그형 전략입니다. Camel은 기본적으로 하나의 구현을 제공합니다. default. 기본 전략은 점과 하이픈(. and -)을 안전하게 마샬링합니다. 는 JMS 헤더 키에 잘못된 문자가 포함되어 있는지와 관련이 없는 JMS 브로커에 사용할 수 있습니다. org.apache.camel.component.jms.JmsKeyFormatStrategy의 자체 구현을 제공하고 # 표기법을 사용하여 참조할 수 있습니다. 옵션은 org.apache.camel.component.sjms.jms.JmsKeyFormatStrategy 유형입니다. | 문자열 | |
| camel.component.sjms.message-created-strategy | Camel이 JMS 메시지를 보낼 때 javax.jms.Message 오브젝트의 새 인스턴스를 생성할 때 호출되는 지정된 MessageCreatedStrategy를 사용합니다. 옵션은 org.apache.camel.component.sjms.jms.MessageCreatedStrategy 유형입니다. | 문자열 | |
| camel.component.sjms.resolve-property-placeholders | 구성 요소 시작 시 속성 자리 표시자를 자체적으로 확인해야 하는지 여부입니다. String 유형의 속성만 속성 자리 표시자를 사용할 수 있습니다. | true | 부울 |
| camel.component.sjms.transaction-commit-strategy | 사용할 커밋 전략을 구성하려면 다음을 수행합니다. Camel은 기본 및 배치라는 두 가지 구현을 기본적으로 제공합니다. 옵션은 org.apache.camel.component.sjms.TransactionCommitStrategy 유형입니다. | 문자열 |
다음은 필요한 ConnectionFactory 공급자로 SjmsComponent 를 구성하는 방법의 예입니다. 기본적으로 단일 연결을 생성하고 구성 요소 내부 풀링 API를 사용하여 저장하여 스레드로부터 안전한 방식으로 세션 생성 요청을 서비스할 수 있도록 합니다.
SjmsComponent component = new SjmsComponent();
component.setConnectionFactory(new ActiveMQConnectionFactory("tcp://localhost:61616"));
getContext().addComponent("sjms", component);
Cryostat 서브스크립션을 지원하는 데 필요한 SJMS 구성 요소의 경우 기본 ConnectionFactoryResource 인스턴스를 재정의하고 clientId 속성을 설정할 수 있습니다.
ConnectionFactoryResource connectionResource = new ConnectionFactoryResource();
connectionResource.setConnectionFactory(new ActiveMQConnectionFactory("tcp://localhost:61616"));
connectionResource.setClientId("myclient-id");
SjmsComponent component = new SjmsComponent();
component.setConnectionResource(connectionResource);
component.setMaxConnections(1);