96.5. 생산자의 표현식 매개변수 사용


Camel 2.16.1 이후부터는 메시지 본문에서 표기법과 같은 OGNL을 사용할 수 있으며 getLicense 및 getMinimum 방법이 있다고 가정합니다.

@NAME(projects)
  SELECT *
  FROM projects
  WHERE license = :${body.license} AND id > :${body.minimum}
  ORDER BY id

96.5.1. 소비자에서 표현식 매개변수 사용

Camel 2.23 사용

ElSql 구성 요소를 소비자로 사용하는 경우 이제 표현식 매개변수(간단 언어)를 사용하여 id, date 또는 something를 검색하기 위해 빈에서 메서드를 호출하는 것과 같은 동적 쿼리 매개 변수를 빌드할 수도 있습니다.

예를 들어 아래 샘플에서는 빈 myIdGenerator에서 nextId 메서드를 호출합니다.

@NAME(projectsByIdBean)
  SELECT *
  FROM projects
  WHERE id = :${bean#myIdGenerator.nextId}
중요

위의 빈 구문에서 간단한 표현식에서 : 대신 # 을 사용해야 합니다. Spring query 매개 변수 구문 분석기는 콜론에서 매개 변수를 분리하는 사용 중이기 때문입니다. 또한 Spring 쿼리 구문 분석기가 각 쿼리에 대해 빈을 두 번 호출한다는 점에 주의하십시오.

또한 빈에는 다음 메서드가 있습니다.

public static class MyIdGenerator {

    private int id = 1;

    public int nextId() {
        // spring will call this twice, one for initializing query and 2nd for actual value
        id++;
        return id / 2;
    }

메시지 본문 및 헤더가 있는 기존 Exchange 는 없으므로 소비자에서 사용할 수 있는 간단한 표현식은 이 예제와 같이 빈 메서드를 호출하는 데 가장 많이 사용할 수 있습니다.

Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

Theme

© 2026 Red Hat
맨 위로 이동