Camel - Как зарегистрировать запрос на выборку на верблюжьем маршруте, используя java dsl, при использовании компонента MYBATIS? - PullRequest
0 голосов
/ 28 апреля 2020

Я хочу записать запрос на выборку перед вызовом базы данных для лучшей читаемости журнала для справки. Я использую компонент mybatis. Я хочу знать, если есть какой-либо встроенный заголовок верблюда или может использоваться заголовок компонента mybatis, запишите запрос.

**CAMEL ROUTE**
from("timer://pollTheDatabase?delay=50s")
.routeId("db-pooling-route")
.to("mybatis:queryToSelectData?statementType=SelectOne");

**MAPPER**
@Mapper
public interface DBMapper{
   public void queryToSelectData();
}

**MAPPER XML**
<select id="queryToSelectData" resultMap="Result">
    SELECT * FROM ACCOUNT AND ROWNUM =1
</select>

1 Ответ

0 голосов
/ 28 апреля 2020

Я очень кратко знаю компонент mybatis, поэтому мой ответ может быть не точным! Верблюд не дает встроенной опции для захвата запроса mybatis. У вас есть только возможность получить имя выписки. Однако, не могли бы вы зарегистрировать тело непосредственно перед отправкой запроса и проверить?

Если в теле нет строки запроса, я бы так и сделал. Чтобы получить строку запроса, вы можете реализовать bean-компонент, в который вам нужно будет импортировать файл mybatis mapper и извлечь требуемую информацию. Затем вы можете записать его в журнал из самого компонента или добавить в свойства Exchange.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...