잘 알려진 엔터프라이즈 통합 패턴을 지원하도록 Spring 프로그래밍 모델을 확장합니다. Spring Integration은 Spring 기반 애플리케이션 내에서 경량 메시징을 가능하게 하며 선언적 어댑터를 통해 외부 시스템과의 통합을 지원합니다. 이러한 어댑터는 원격, 메시징 및 스케줄링에 대한 Spring의 지원보다 더 높은 수준의 추상화를 제공합니다. Spring Integration의 주요 목표는 유지 관리 및 테스트 가능한 코드를 생성하는 데 필수적인 관심사의 분리를 유지하면서 엔터프라이즈 통합 솔루션을 구축하기 위한 간단한 모델을 제공하는 것입니다.
Spring Framework를 사용하면 개발자가 인터페이스를 사용하여 코딩하고 DI(종속성 주입)를 사용하여 작업을 수행하는 데 필요한 종속성을 POJO(Plain Old Java Object)에 제공할 수 있습니다. Spring Integration은 이 개념을 한 단계 더 발전시켜 POJO가 메시징 패러다임을 사용하여 함께 연결되고 개별 구성 요소가 애플리케이션의 다른 구성 요소를 인식하지 못할 수도 있습니다. 이러한 애플리케이션은 더 높은 수준의 기능을 형성하기 위해 세분화된 재사용 가능한 구성 요소를 조립하여 구축됩니다. 신중하게 설계하면 이러한 흐름을 모듈화하고 더 높은 수준에서 재사용할 수도 있습니다.
세분화된 구성 요소를 함께 연결하는 것 외에도 Spring Integration은 외부 시스템과 통신하기 위한 다양한 채널 어댑터 및 게이트웨이를 제공합니다. 채널 어댑터는 단방향 통합(송신 또는 수신)에 사용됩니다. 게이트웨이는 요청/응답 시나리오(인바운드 또는 아웃바운드)에 사용됩니다.
먼저 POM/Gradle에 종속성이 필요합니다.
< dependency >
< groupId >org.springframework.integration</ groupId >
< artifactId >spring-integration-core</ artifactId >
</ dependency >
대상 프로토콜 채널 어댑터를 처리하는 경우에도 전이적으로 끌어옵니다. 예를 들어 Apache Kafka 지원을 위해서는 다음이 필요합니다.
< dependency >
< groupId >org.springframework.integration</ groupId >
< artifactId >spring-integration-kafka</ artifactId >
</ dependency >
주석 또는 Java DSL 구성의 경우 애플리케이션 컨텍스트에서 Spring 통합을 활성화 해야 합니다.
@ EnableIntegration
@ Configuration
public class ExampleConfiguration {
}
우리의 행동 강령을 참조하십시오.
당사의 보안 정책을 참조하십시오.
Spring 통합은 참조 문서(게시 및 소스), GitHub 위키 페이지 및 API 참조를 유지 관리합니다. Spring 프로젝트 전반에 걸친 가이드와 튜토리얼도 있습니다.
프로젝트를 체크아웃하고 소스에서 빌드하려면 다음을 수행하세요.
git clone git://github.com/spring-projects/spring-integration.git
cd spring-integration
./gradlew clean test
or
./gradlew clean testAll
후자는 추가 테스트( @LongRunningIntegrationTest
주석이 달린 테스트)를 실행합니다. 이는 보다 철저한 테스트이지만 실행하는 데 훨씬 더 오랜 시간이 걸립니다.
테스트 결과는 각 모듈 아래의 build/reports/tests/test
(또는 .../testAll
)에 HTML 형식으로 캡처됩니다.
일부 모듈에서 테스트가 실패하더라도 전체 빌드를 수행하려면 명령에 --continue
추가하세요. 그렇지 않으면 빌드 중인 현재 모듈이 완료된 후 빌드가 중지됩니다.
참고: Spring Integration은 Java SE 17 이상에서 실행되지만 프로젝트를 빌드하려면 Java 17 컴파일러가 필요합니다.
로컬 Maven 캐시에 jar를 빌드하고 설치하려면 다음 안내를 따르세요.
./gradlew build publishToMavenLocal
API Javadoc을 빌드하려면(결과는 build/api
에 있음):
./gradlew api
참조 문서를 작성하려면(결과는 build/site
에 있음):
./gradlew antora
-dist
, -docs
및 -schema
zip 파일을 포함한 전체 배포판을 빌드하려면(결과는 build/distributions
에 있음):
./gradlew dist
BuildShip 플러그인이 설치되어 있는 경우,
파일 -> 가져오기 -> Gradle -> 기존 Gradle 프로젝트
Eclipse 메타데이터(.classpath 및 .project 파일 등)를 생성하려면 다음을 수행합니다.
./gradlew eclipse
완료되면 평소와 같이 프로젝트를 Eclipse로 가져올 수 있습니다.
파일 -> 가져오기 -> 일반 -> 기존 프로젝트를 작업공간으로
'spring-integration' 루트 디렉터리를 찾습니다. 모든 프로젝트는 오류 없이 가져와야 합니다.
프로젝트를 IntelliJ IDEA로 가져오려면:
파일 -> 열기... -> 스프링 통합 프로젝트 루트 디렉터리에서 build.gradle을 선택합니다.
기여자 지침도 참조하세요.
자세한 내용은 Spring 통합 웹사이트(https://spring.io/projects/spring-integration)를 참조하세요.