java有没有办法在jooq中解析自定义函数?
我想在一种方言上解析我的函数,然后将它转换成另一种方言
例如,我在一种方言中有这样的字符串:
"(1 + my_function(myTable.id*2))/2"
我想把它解析成另一种方言:
"(1 + my_other_dialect_function(myTable.id*2))/2"
我已经创建了CustomField
继承器,它将使用this example正确呈现:
class MyFunctionCustomFiled extends CustomField<Integer>
但我想不出把它插入表达式的正确方法
我可以在解析步骤中这样做吗?或者使用下面的VisitListener进行渲染
public class CustomFunctionsFisitListener2 extends DefaultVisitListener {
public void visitStart(VisitContext context){
if(context.queryPart().isTheFunctionINeed()){
Field<?> argument = context.queryPart().retrieveArgumentExpression();
context.queryPart(MyFunctionCustomFiled(argument));
}
}
}
共 (0) 个答案