侧边栏壁纸
博主头像
波哥

80后程序猿&副业达人
爱好:敲代码、搞副业
无干货,不分享!

  • 累计撰写 1,878 篇文章
  • 累计创建 77 个标签
  • 累计收到 17 条评论

目 录CONTENT

文章目录

Drools的编码建议

波哥
2021-11-14 / 0 评论 / 0 点赞 / 174 阅读 / 0 字

Drools的编码建议

  • 所有的规则文件(.drl )应统一放在一个规定的文件夹里面,如(rules文件夹 )
  • 规则文件(.drl)的 package 应和调用java的 package一致。
  • 书写的每个规则,应尽量加上注释。注释要清晰明了,言简意赅 。
  • 同一类型的对象,尽量放在一个规则文件里,如所有Customer类型的对象,尽量放在一个规则文件里 。这样做的好处是:当WorkingMemery的fact对象变化时,可以控制规则的触发条件。 同时,该对象的所有规则在同一个文件,也方便维护。
  • 规则结果部分(RHS),尽量不要有条件语句,如if(…),尽量不要有复杂的逻辑和深层 次的嵌套语句;
  • 每条规则语句,最好都加上salience属性,第一条值最大,第二条次之,依次下去…
  • 每条规则执行结束,都应该加上打印日志的静态方法,此方法,统一封装提供。
  • 面对复杂的规则时,尽量使用aganda-group组属性,同时,设置lock-on-active为true
  • Drools的默认 dialect “java”,开发中,我们尽量避免使用dialect “mvel”
0

评论区