如果遍历级联方法时经常会遇到NPE,这些方法可能在某个地方很长。例如,我想查询客户的“称呼”属性..
ConstructorExpression giftCE = ConstructorExpression.create(Gift,
order.a.b.c.salutation
)
a,b或c中的任何一个或全部可能为NULL,从而导致NPE。
在Java或Groovy中防范此类NPE的最佳“querydsl”是什么?
(我不确定Groovy的Elvis op是否在querydsl声明中涵盖了这种情况)
答案 0 :(得分:0)
您可以使用字段访问者而不是最终字段。这样您就不会遇到NPE http://www.querydsl.com/static/querydsl/3.1.1/reference/html/ch03s04.html#d0e1713
我不确定你是否可以在Groovy中使用字段/属性语法,因为它们不是getter。
在你的情况下它会变成
ConstructorExpression giftCE = ConstructorExpression.create(Gift,
order.a().b().c().salutation
)