Esper — как создать несогласную «фабрику утверждений»?

#esper #complex-event-processing

#esper #сложная обработка событий

Вопрос:

используя движок Esper, я обнаружил, что пишу множество SQL’ов строк и выполняю множество строковых действий для вставки запроса в объект EPStatement.

Какова наилучшая практика для построения запросов более удобным способом? может быть, создавать запросы не с чистыми строками, а с объектами? (Кто-нибудь использовал объект EPManagedStatement?)

Ответ №1:

Существует также объектная модель операторов. С помощью этих классов вы можете создавать инструкции более объектно-ориентированным способом и избегать всех строковых запросов.

Взято из документации:

Объектная модель инструкции — это набор классов, которые обеспечивают объектно-ориентированное представление инструкции EPL или pattern. Классы объектной модели находятся в пакете com.espertech.esper.client.soda. Экземпляр EPStatementObjectModel представляет объектную модель оператора.

Классы объектной модели оператора представляют собой полную спецификацию оператора. Все конструкции EPL и pattern, включая выражения и вложенные запросы, доступны через объектную модель statement.

Ответ №2:

Если вы обнаружите, что пишете много EPL в произвольной форме, который сильно зависит только от фактических значений, которые вы вставляете, один из подходов, который, как вы можете обнаружить, сокращает объем кода, заключается в использовании подготовленных инструкций ( (EPPreparedStatement). Таким образом, вы пишете EPL один раз, а затем просто выполняете привязки без необходимости заново указывать текст заново.