【SpEL】Java使用SpEL

SpEL表达式?Spring表达式语言全称为“Spring Expression Language”,缩写为“SpEL”,类似于Struts2x中使用的OGNL表达式语言,能在运行时构建复杂表达式、存取对象图属性、对象方法调用等等,并且能与Spring功能完美整合,如能用来配置Bean定义。
在这里插入图片描述

资料到处都有说明,功能强大,使用方便。但是真正到实用场景的时候,解决业务需要才是第一要务,理论后续要查官方学习吧。

看的简单的案例:

@Test
public void test_spel() throws IOException {
	String elExpression = "H_TYPE==1";
	Map<String, Object> param = new LinkedHashMap<>();
	param.put("H_TYPE", 1);
	Object value = SpelUtil.getValue(param, elExpression);
	System.out.println(value);
}

调试

每次写一个单元调试,一个接一个…然后自己懂了怎么使用和用法了,但是提供给小伙伴使用的时候就会问,所有需要提供一个在线调试页面。

场景1:查询编码是否匹配

条件表达式:h_code == '350000'
传递的参数:

{
   "h_code ": "350000"
}

参数满足情况下:
在这里插入图片描述

场景2:查询城市是否匹配

条件表达式:#root['city']=='北京'
传递的参数:

{
   "city": "北京"
}

在这里插入图片描述

场景3:查询多选框是否匹配

条件表达式:check==1 and T(cn.hutool.core.util.ArrayUtil).containsAny(fruits.split(","),"苹果")
传递的参数:

{
   "check": 1,
   "fruits":"香蕉,葡萄,苹果"
}

在这里插入图片描述

场景4:查询多条件匹配

条件表达式:age==88 && city=='北京'
传递的参数:

{
	"age": 88,
	"city":"北京"
}

在这里插入图片描述

附件

官方学习9. Spring Expression Language (SpEL)
拓展学习玩转Spring中强大的spel表达式
其他工具正则表达式在线测试

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

掘金者说

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值