Behandeln von null-Werten in der spring expression language
Ich habe den folgenden code mit spring expression language:
StandardEvaluationContext stdContext = new StandardEvaluationContext();
stdContext.setVariable("emp", filterInputData);
ExpressionParser parser = new SpelExpressionParser();
parser.parseExpression("#emp.?[name.toLowerCase().contains('Hari')]").getValue(stdContext);
wo emp ist der name der Bohne. Hier der name kann null sein, und bei Aufruf der name.toLowerCase()
ich bekomme eine nullpointer exception. Wie behandeln die null-Werte in diesem Szenario? Muss ich anrufen toLowercase()
für nur nicht-null-Werte.
toLowerCase().contains('Hari')
ist immerfalse
Du musst angemeldet sein, um einen Kommentar abzugeben.
oder
je nachdem, was Sie wollen, zurück, wenn der name fehlt.
Tatsächlich, dieses kurze Formular aus, funktioniert auch...
BTW, in deiner ursprünglichen Frage...
wird nie true zurück (H groß).
Oder, Elvis ist dein Freund...
name?.toLowerCase()
sollte auch helfenKönnen Sie Autowire diese Bohne in Ihrer Klasse?
Etwas wie: