스프링 부트 공식 레퍼런스를 한글로 번역한 문서입니다.
전체 목차는 여기에 있습니다.
목차
12.10. Messaging
스프링 부트는 메세지 처리를 지원하는 여러 가지 스타터를 제공한다. 이번 섹션에선 스프링 부트에서 메세지를 처리할 때 궁금해하는 질문들에 답해본다.
12.10.1. Disable Transacted JMS Session
JMS 브로커가 트랜잭션을 이용한 세션을 지원하지 않는다면 트랜잭션 지원을 전부 비활성화해야 한다. 자체 JmsListenerContainerFactory
를 생성하면 기본적으로 트랜잭션을 사용할 수 없기 때문에 다른 설정은 필요하지 않다. DefaultJmsListenerContainerFactoryConfigurer
를 이용해 스프링 부트의 디폴트 설정을 재사용할 때는, 다음과 같이 트랜잭션 세션을 비활성화할 수 있다:
@Configuration(proxyBeanMethods = false)
public class MyJmsConfiguration {
@Bean
public DefaultJmsListenerContainerFactory jmsListenerContainerFactory(ConnectionFactory connectionFactory,
DefaultJmsListenerContainerFactoryConfigurer configurer) {
DefaultJmsListenerContainerFactory listenerFactory = new DefaultJmsListenerContainerFactory();
configurer.configure(listenerFactory, connectionFactory);
listenerFactory.setTransactionManager(null);
listenerFactory.setSessionTransacted(false);
return listenerFactory;
}
}
위 예제는 디폴트 팩토리를 재정의하며, 애플리케이션에서 정의하는 다른 팩토리가 있다면 거기에도 적용될 거다.
Next :Batch Applications
스프링 배치와 관련된 how to 가이드 (데이터소스 지정하기, 실행할 job 이름/파라미터 설정하기 등)
전체 목차는 여기에 있습니다.