使用 Esper 引擎 - 我发现自己编写了很多字符串 SQL,并执行了很多字符串操作来将查询插入 EPStatement 对象。
以更方便的方式构建查询的最佳实践是什么?也许不是用纯字符串而是用对象构建查询?(有人用过 EPManagedStatement 对象吗?)
使用 Esper 引擎 - 我发现自己编写了很多字符串 SQL,并执行了很多字符串操作来将查询插入 EPStatement 对象。
以更方便的方式构建查询的最佳实践是什么?也许不是用纯字符串而是用对象构建查询?(有人用过 EPManagedStatement 对象吗?)
还有Statement Object Model。使用这些类,您可以以更加面向对象的方式构建语句并避免所有字符串查询。
取自文档:
语句对象模型是一组类,它们提供 EPL 或模式语句的面向对象表示。对象模型类位于包 com.espertech.esper.client.soda 中。EPStatementObjectModel 的一个实例代表一个语句的对象模型。
语句对象模型类是语句的完整且完整的规范。所有 EPL 和模式构造(包括表达式和子查询)都可通过语句对象模型获得。
如果您发现您正在编写大量自由格式的 EPL,而这些 EPL 仅因您插入的实际值而有很大差异,那么您可能会发现一种减轻代码量的方法是使用准备好的语句((EPPreparedStatement)。这样,您编写 EPL 一次,然后简单地发出绑定,而无需重新指定文本。