spring jms 예제

또한, 플러그인은 Maven 명령을 통해 예제를 시작할 수 있습니다. 생성된 프로젝트에는 다양한 스프링 종속성을 관리하는 스프링 부팅 스타터가 포함되어 있습니다. DefaultMessageListener Container는 다른 많은 특수 컨테이너와 함께 스프링이 제공하는 기본 메시지 수신기 컨테이너입니다. 여러 번의 재배달을 구성할 수 있지만 좀 더 설정이 필요합니다. 이 것을 변경할 수 있도록, 우리는 아파치 ActiveMQ를 설치 해야, 기본적으로 스프링 부팅에 의해 제공 되는 과거 추가 구성을 허용 하는. ActiveMQ가 설치되고 서비스가 실행 중이면(여기에서 추가 설치 정보를 찾을 수 있음) 실제 코드를 조금만 변경하면 됩니다. 실제로 코드 변경이 아니라 application.properties 파일에서 변경된 속성이 이미 없는 경우 리소스 폴더에 배치해야 합니다. 봄 초기이즈즈를 사용하여 메이븐 프로젝트를 만들어 봅시다. JMS(ActiveMQ)를 종속성으로 선택해야 합니다. 이 가이드를 스프링 도구 모음으로 바로 가져오는 방법을 읽어보십시오. JmsTemplate와는 달리 메시지 수신기 컨테이너가있는 스프링의 캐칭 커넥션 팩토리를 사용하지 않는 것이 이상적입니다. 그 이유는 일반적으로 수신기 컨테이너 자체가 수명 주기 내에서 적절한 캐싱을 처리하도록 하는 것이 바람직하기 때문입니다. 이것은 Spring JMS 템플릿을 사용하여 메시지를 보내고 JMS 수신기가 보낸 메시지를 처리하는 매우 간단한 예입니다.

포함된 ActiveMQ 인스턴스는 브로커로 사용됩니다. Spring JmsTemplate를 구성하는 방법을 보여 주는 코드 샘플을 만들어 보겠습니다. 주문 큐에 주문 메시지를 보낸 다음 상태 큐에서 상태 메시지를 동기적으로 수신합니다. 이제 우리는 우리가 OrderTransactionControllerand에서 OrderTransactionReceiver에 방법을 만드는 방법을 볼 수있는 예제에서 볼 수있는 몇 가지 멋지게 배치 된 인쇄 라인의 사용을 통해 실제로 작동하는지 확인하기 위해 테스트 할 수있는 모든 것을 함께 넣어. Spring은 모든 POJO에 메시지를 게시할 수 있는 수단을 제공합니다. 다음으로, ActiveMQ에서 메시지를 보내고 받을 수 있는지 확인하기 위해 기본 SpringJmsApplicationTest 클래스를 만듭니다. 기본 MessageConverter는 기본 형식(예: 문자열, 맵, Serializable)만 변환할 수 있으며 전자 메일은 의도적으로 직렬화할 수 없습니다. 우리는 잭슨을 사용하고 텍스트 형식 (즉, 텍스트 메시지로) json에 콘텐츠를 직렬화 할 수 있습니다. 스프링 부팅은 메시지 변환기의 존재를 감지하고 기본 JmsListenerContainerFactory기본JmsListenerContainerFactory에 의해 생성된 모든 JmsListenerContainerFactory 모두에 연결합니다. 먼저 기본 빌드 스크립트를 설정합니다. Spring으로 앱을 빌드할 때 원하는 빌드 시스템을 사용할 수 있지만 Gradle 및 Maven에서 작업하는 데 필요한 코드가 여기에 포함되어 있습니다. 어느 쪽이 익숙하지 않은 경우, Gradle와 자바 프로젝트 구축 또는 메이븐과 자바 프로젝트 구축을 참조하십시오.

Spring JMS 템플릿을 사용하려면 JMS 공급자와의 연결을 만드는 데 사용되는 ConnectionFactory에 대한 참조를 제공해야 합니다.