首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

drools中insert,update等导致死循环的有关问题

2013-12-10 
drools中insert,update等导致死循环的问题本帖最后由 pingguonjb 于 2013-11-22 20:44:22 编辑在读Drools5

drools中insert,update等导致死循环的问题
本帖最后由 pingguonjb 于 2013-11-22 20:44:22 编辑 在读Drools5规则引擎开发教程(http://wenku.baidu.com/view/a6516373f242336c1eb95e7c.html)第30页的代码清单2--18时,有一疑问:该段代码(标红的部分)(rule1的insert处)会不会导致死循环啊??? 跪求大侠解惑!!

代码::
#created on: 2009-8-26 
package test 
import java.util.List; 
 
query "query fact count
 Customer(); 
end 
 
rule "rule1" 
  salience 2 
  when 
   eval(true); 
  then  
  Customer cus=new Customer(); 
  cus.setName("张三"); 
  cus.setAge(1); 
   insert(cus); 
end 

rule "rule2" 
  salience 1 
  when 
  $customer:Customer(name=="张三",age<10); 
  then  
  $customer.setAge($customer.getAge()+1); 
   update($customer); 
  System.out.println("----------"+$customer.getName()); 
end  Drools
[解决办法]
能加日志么,跟一下看看
[解决办法]
加上no-loop属性, 这样同一个rule不会被重复执行

热点排行