Drools规则引擎中数据库与规则模板生成DRL规则文件
数据中存储了一些属性信息,是否可以将数据库表中的内容导入到Drools Guvnor中,成为决策表?
原则上说:数据库存储规则文件或规则模板,与Drools Guvnor中编辑规则文件或模板是两套系统。可以理解为Drools Guvnor是一套编辑器。因此,两者并不能够很好的进行兼容。
如果想在数据库中维护规则,可以看看如下规则模板相关的内容:
http://docs.jboss.org/drools/release/6.0.1.Final/drools-docs/html_single/index.html#d0e4969
规则模板提供了一种相对简单的方式来合并DRL和数据。
通过组合数据库和模板的形式来创建规则,需要引入org.drools.template.jdbc.ResultSetGenerator
。该类可以通过数据库查询结果集和模板来创建DRL文件。
// Get results from your DB query... resultSet = preparedStmt.executeQuery(); // Generate the DRL... resultSetGenerator = new ResultSetGenerator(); String drl = resultSetGenerator.compile(resultSet, new FileInputStream("path/to/template.drt"));
随后,可以通过API创建一个package,然后添加生成DRL文件到package当中。
关注公众号:程序新视界,一个让你软实力、硬技术同步提升的平台
除非注明,否则均为程序新视界原创文章,转载必须以链接形式标明本文链接
本文链接:https://choupangxia.com/2021/12/28/drools-db-rule-template-to-drl/