我被Drools 5困住了,需要一些帮助.我想做的是使用传入的DAO并将其中的值赋给局部变量,如下所示...
rule "test rule 1"
when
$carDao : ICarDAO( )
$x : $carDao.getMap()
eval (
$x.contains("a") && $x.contains("b")
)
then
// do stuff
end
Run Code Online (Sandbox Code Playgroud)
但是Drools 5不允许分配局部变量.我想分配一个局部变量,这样我就不必对DAO进行两次相同的调用.
那么有人能指出我正确的方向吗?
谢谢!杰夫波特
rule "test rule 1"
when
$carDao : ICarDAO( )
$x: java.util.Map( ) from $carDao.getMap()
eval (
$x.contains("a") && $x.contains("b")
)
then
// do stuff
end
Run Code Online (Sandbox Code Playgroud)
ta..dar!
rule "test rule 1"
when
$carDao : ICarDAO( $x : map )
eval (
$x.contains("a") && $x.contains("b")
)
then
// do stuff
end
Run Code Online (Sandbox Code Playgroud)
或自 5.2 起:
rule "test rule 1"
when
$carDao : ICarDAO( $x : map, map.contains("a"), map.contains("b") )
then
// do stuff
end
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
9009 次 |
最近记录: |