我如何使用 SpEL 评估子对象 属性 其中子对象可能为空

How can I use SpEL to evaluate a subobject property where the subobject might be null

我要评价

"user.name"

user 可能为空,这当然会导致 NPE 有没有办法说如果用户不为空则只尝试获取名称?否则 return 无效。

我了解了 Elvis 语法,但我不确定如何在此处应用它

您可以像这样使用 safe navigation operator

user?.name

这与您描述的行为完全相同 - 如果用户是 null,表达式将被计算为 null,否则它将被计算为 user.name 的值.