在XML Config文件中有某种表达式

时间:2012-07-10 02:24:16

标签: java xml

我对xml很新,有没有办法,我可以有某种方式 在xml中定义的表达式,以便可以正确解释它 的java。

我有一个配置文件,我想定义一些表达式 即#{age > 27 or location != US },以便在解析它时 正确解释。

如果有任何例子,那将会有很大的帮助。

由于

3 个答案:

答案 0 :(得分:0)

如果你使用Spring,就有办法做这样的事情。您基本上可以将代码放入特殊表达式中。见http://static.springsource.org/spring/docs/3.0.5.RELEASE/reference/expressions.html#expressions-beandef

答案 1 :(得分:0)

如果你问是否有办法让XML解析器这样做,那么答案是否定的。

在尝试解析XML(即在某种预处理器中)之前,或者在解析XML之后(即在Java代码中),您的替代方法是执行“解释”。

jjathman提到Spring表达式语言。这是在Java代码中进行表达式求值的一种方法,但我不知道它是否可以在解析XML之前应用。

jjathman链接到的Spring表达式语言的描述主要集中在布线文件中的EL上。那里发生的事情是XML解析器将表达式视为文本,而Spring bean基础结构在稍后阶段进行表达式的扩展。除非您的XML是Spring bean定义,否则该特定描述不能直接应用于您的问题。

答案 2 :(得分:0)

在类路径中导入Groovy jar并使用Eval.xy方法。

assert true == Eval.xy(30, "US", ' x > 27 or y != US')