2020-02-14

Spring Inline Maps

Inline Maps


Maps can also be expressed directly in an expression using {key:value} notation.

// evaluates to a Java map containing the two entries

Map inventorInfo = (Map) parser.parseExpression("{name:'Nikola',dob:'10-July-1856'}").getValue(context); 
Map mapOfMaps = (Map) parser.parseExpression("{name:{first:'Nikola',last:'Tesla'},dob: {day:10,month:'July',year:1856}}").getValue(context); 

{:} by itself means an empty map. For performance reasons, if the map is itself composed of fixed literals or other nested constant structures (lists or maps) then a constant map is created to represent the expression, rather than building a new map on each evaluation. Quoting of the map keys is optional, the examples above are not using quoted keys.


No comments:

Post a Comment