2011-03-27 227 views
0

在Spring表达式语言(SpEL)中,每个文本关系运算符都有一个符号等价物。例如,eq可以写为==,而lt可以写为<(来源here)。Spring SpEL逻辑运算符

然而,逻辑运算符没有象征性的等价物 - 至少据我所知。我必须使用andor&|的预期表示法不存在(由于某种原因,not不同,它具有相同的!)。

任何想法如果&|可用,或者如果有可能扩展Spring来支持它们?

回答

0

你必须看看org.springframework.expression.spel.standard.Tokenizer在方法process()在那里你会发现|,&,||并且不支持& &。添加这将需要继承Tokenizer并且继承org.springframework.expression.spel.standard.InternalSpelExpressionParser的子类,因为在它的.doParseExpression()方法中,Tokenizer被直接实例化... Spring 3.1版本的源代码由我来完成。