Spring注释创建一个jexl2.Expression
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring注释创建一个jexl2.Expression相关的知识,希望对你有一定的参考价值。
我正在尝试理解我需要适应的一段Spring代码。 我有:
<bean id="…" class="…">
<property name="expr"
value="teams.contains(member.team) and not empty(member.projects)" />
</bean>
相应的类有一个字段
private Expression expr;
类型
org.apache.commons.jexl2.Expression
现在我试图找到适当的Spring注释来摆脱XML文件。但我甚至无法理解如何将一个简单的String属性作为jexl2.Expression对象注入。这是如何运作的?
答案
一位朋友找到答案:
还有另一个XML文件:
<bean id="bean_for_ExprConverter" class="package.of.custom.ExpressionConverter">
<constructor-arg ref="bean_for_JexlEngine"/>
</bean>
而且,在项目的属性中:
application.spring.converters = #{{\
@'bean_for_ExprConverter'\
}}
因此,只要定义了转换器bean,就足以简单地使用@Value
注释注入表达式字符串。
以上是关于Spring注释创建一个jexl2.Expression的主要内容,如果未能解决你的问题,请参考以下文章
Spring Boot 应用程序不会为 JPA @Table 注释创建模式