我们可以在Excel工作表中编写Drool规则吗? 规则可用于简单的人类可读内容吗? 如果我们能够如何做到这一点? 请解释一下。
答案 0 :(得分:2)
是的,你可以。如何阅读名为“Spreadsheets中的决策表”的用户指南部分?
http://docs.jboss.org/drools/release/5.5.0.Final/drools-expert-docs/html_single/#d0e1157
答案 1 :(得分:0)
最好从使用Eclipse Drools Plugin生成的示例规则excel开始。它提供了许多已经设置的东西。只需更改内部数据,并为您的程序使用excel决策表。在这个Drools Decision Table Tutorial中,Drools 6.4使用了相同的方法
答案 2 :(得分:0)
是的,您可以在Spread Sheet Xls中编写规则,上传后这些规则会自动转换为drl。 如果您有许多具有不同值的类似规则,则可以使用Drools Decision Tables。 您可以在Excel电子表格(.xls文件)中定义决策表。
我附上可能对您有帮助的简单规则文件 在这个例子中,我们根据租房年龄,时间(贷款期限)和性别决定利率。
数据模型:
package demopro.demopro;
/**
* This class was automatically generated by the data modeler tool.
*/
public class Customer implements java.io.Serializable
{
static final long serialVersionUID = 1L;
private java.lang.Integer time;
private java.lang.Integer age;
private java.lang.Integer interest;
private java.lang.String gender;
private java.lang.Integer rate;
private java.lang.Integer amount;
public Customer()
{
}
public java.lang.Integer getTime()
{
return this.time;
}
public void setTime(java.lang.Integer time)
{
this.time = time;
}
public java.lang.Integer getAge()
{
return this.age;
}
public void setAge(java.lang.Integer age)
{
this.age = age;
}
public java.lang.Integer getInterest()
{
return this.interest;
}
public void setInterest(java.lang.Integer interest)
{
this.interest = interest;
}
public java.lang.String getGender()
{
return this.gender;
}
public void setGender(java.lang.String gender)
{
this.gender = gender;
}
public java.lang.Integer getRate()
{
return this.rate;
}
public void setRate(java.lang.Integer rate)
{
this.rate = rate;
}
public java.lang.Integer getAmount()
{
return this.amount;
}
public void setAmount(java.lang.Integer amount)
{
this.amount = amount;
}
public Customer(java.lang.Integer time, java.lang.Integer age,
java.lang.Integer interest, java.lang.String gender,
java.lang.Integer rate, java.lang.Integer amount)
{
this.time = time;
this.age = age;
this.interest = interest;
this.gender = gender;
this.rate = rate;
this.amount = amount;
}
}
决策表(SpreadSheet):