您的位置:首页 > 其它

SODBASE CEP学习(十七):自定义函数开发

2016-11-19 23:17 369 查看
前面的文章已经多次提到自定义函数,对JAVA开发熟悉的读者,只要自己实现一个类的public方法,就可以当做自定义函数在EPL中使用。部署时,代码然后打成jar包放到lib目录下即可。如果对这个流程不熟悉也不要紧,本文提供一个示例,按步骤就可以做自定义函数

1 使用场景

自定义函数可以在SELECT语句和WHERE语句中作为函数使用。

2学习自定义函数制作

整个过程大概5分钟以内可完成

(1)下载SODBASE-CEP-SDK-UserFunction-2.0.zip解压。

(2)在Eclipse中导入,File->Import点击确定

选择General->Existing Projects into Workspace

选择刚解压的目录,点击“Finish”

(1) 新建包名com.example,新建Class,手工取名Compare

(2) 编写代码

package com.example;
public class Compare
{
public boolean greaterThan(String arg1,String arg2)
{
if(Double.valueOf(arg1)>Double.valueOf(arg2))
return true;
else
return false;
}
}


(5)编写完代码后,将工程导出为jar包

 


取名“sodbase-external-dataadaptor.jar”(注:可以自己取)

(3) 将导出的“sodbase-external-dataadaptor.jar”和依赖的jar包放到studio的externaljar目录下。读者也可以直接放到lib目录下重启Studio,放到exteranljar目录的作用是可以不重启服务器动态加载依赖库。在CEP Server中使用也一样可以放到lib目录下重启服务器,或者放到externaljar目录不重启服务器。

(4) 在Studio建模中,为模型配置依赖库,选择sodbase-external-dataadaptor.jar

 



在谓词条件中使用,例如JAVA:com.example.Compare:greaterThan(T1.price,T2.price)。注意JAVA后面和函数名之前是英文冒号。

如果是static public函数则使用JAVASTATIC前缀,即JAVASTATIC:com.example.Compare:greaterThan(T1.price,T2.price)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: