검색

323.9. 샘플

download PDF

아래 샘플에서는 쿼리를 실행하고 각 행이 Map<String, Object 및 키가 열 이름인 행 목록으로 결과를 검색합니다.In the sample below we execute a query and retrieve the result as a List of rows , where each row is a Map<String, Object, and the key is the column name.

첫째, 샘플에 사용할 테이블을 설정했습니다. 이는 단위 테스트를 기반으로 하므로 java에서 수행합니다.

SQL 스크립트 createAndPopulateDatabase.sql 에서 실행하면 아래에 설명된 것처럼 보입니다.

그런 다음 경로와 sql 구성 요소를 구성합니다. sql 엔드포인트 앞에 직접 엔드포인트를 사용합니다. 그러면 클라이언트가 long sql: URI보다 훨씬 쉽게 사용할 수 있는 URI인 직접 엔드포인트로 Exchange를 보낼 수 있습니다.This allows you to send an exchange to the direct endpoint with the URI, direct:simple, which is much easier for the client to use than the long sql: URI. DataSource 는 레지스트리에서 조회되므로 표준 Spring XML을 사용하여 DataSource 를 구성할 수 있습니다.

그런 다음 메시지를 직접 끝점으로 실행하여 데이터베이스를 쿼리하는 sql 구성 요소로 라우팅합니다.

Spring XML에서 다음과 같이 DataSource 를 구성할 수 있습니다.

 <jee:jndi-lookup id="myDS" jndi-name="jdbc/myDataSource"/>

323.9.1. 명명된 매개변수 사용

Camel 2.11에서 사용 가능

아래 지정된 경로에서 projects 테이블에서 모든 프로젝트를 가져오려고 합니다. SQL 쿼리에는 두 개의 매개 변수, :#lic 및 :#min이 있습니다.
그런 다음 Camel은 메시지 본문 또는 메시지 헤더에서 이러한 매개변수를 조회합니다. 위의 예에서 named 매개변수의 경우 constant value
로 두 개의 헤더를 설정합니다.

   from("direct:projects")
     .setHeader("lic", constant("ASF"))
     .setHeader("min", constant(123))
     .to("sql:select * from projects where license = :#lic and id > :#min order by id")

메시지 본문이 java.util.Map 인 경우 명명된 매개 변수는 본문에서 가져옵니다.

   from("direct:projects")
     .to("sql:select * from projects where license = :#lic and id > :#min order by id")
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.