Да, большинство фреймворков для этого используют отражения, с предполагаемым требованием, что вы должны использовать правильное соглашение о присвоении имен для методов получения / установки (getXXX и setXXX или isXXX и setXXX для логического свойства).
Может возникнуть проблема с производительностью, но если вы не сравните тестирование своего приложения и не обнаружите, что отражения являются основным узким местом, я бы посоветовал отказаться от преждевременной оптимизации и использовать отражения как самое простое решение.С учетом сказанного, вы можете посмотреть эту статью о замене отражений генерацией кода:
http://www.ibm.com/developerworks/java/library/j-dyn0610/