for ( Map.Entry<String, ?> row : values.entrySet() ) {
String rowKey = row.getKey();
Object rowValue = row.getValue();
SpelExpressionParser parser = new SpelExpressionParser();
StandardEvaluationContext evaluationContext = new StandardEvaluationContext( entity );
evaluationContext.addPropertyAccessor( new MapAsPropertyAccessor() );
evaluationContext.setRootObject( entity );
Object spelValue;
try {
Expression expression = parser.parseExpression( rowKey );
spelValue = expression.getValue( evaluationContext );