Alguém poderia me indicar quais ferramentas posso usar para manipular bytecodes, gostaria de saber como ferramentas como hibernate, etc conseguem por exemplo interceptar um metodo get e fazer com que determinado código deles rode.
Pelo que pesquisei eles fazem uso de proxies, porém não tenho ideia de como e com quais API’s eles fazem isso.
Realmente eles usam o cglib e o asm. Se quer algo mais alto nivel eu sugiro o Javasssit da JBoss. É uma biblioteca alto nivel com que vc consegue muitas das coisas que o pessoas do Hibernate, Spring e companhia usam.