Evite código de reflexão direta com a ajuda do Spring

Uma maneira legal de evitar lidar com reflexão diretamente em alguns cenários usuais é usar o Spring PropertyAccessorFactory.
Por exemplo, dado o feijão:

public class NiceBean {
public String value = "default";

public String getValue() {
return "calculated";
}
}

é fácil obter o correto valuereflexivamente chamando PropertyAccessorFactory.forBeanPropertyAccess(new NiceBean()).getPropertyValue("value").

Obviamente, evitar totalmente a reflexão é de longe a melhor abordagem, mas, quando necessário, essa é uma boa maneira de não ter que lidar diretamente com o código de reflexão feio. Infelizmente, parece que campos privados não podem ser lidos dessa maneira. Para esse e outros casos mais complexos, dê uma olhada na ReflectionUtilsaula de Spring .