



Я бы сказал AspectJ. Часть IDE, насколько мне известно, отсутствует, но документация и выразительность - одни из лучших фреймворков АОП, которые я видел.
JBossAOP и AspectJ - две часто используемые зрелые структуры для АОП. Еще один популярный вариант - Spring AOP, но в нем отсутствуют некоторые функции двух других.
И JBossAOP, и AspectJ имеют схожие функции, с одной большой разницей в том, что AspectJ полагается на расширения языка Java, тогда как JBoss AOP - нет.
Если ваши требования к AOP довольно просты, также стоит рассмотреть библиотеку для работы с байтовым кодом, такую как КАК М. Я использовал ASM для реализации простых рекомендаций (т. Е. Кода, который вводится до и после вызовов методов), и он оказался более легкой альтернативой JBossAOP. ASM четко спроектирован и хорошо документирован.
Если вы уже используете Spring, у управляемых объектов уже есть Поддержка АОП. Хотя он не такой гибкий, как AspectJ, он не требует этапа предварительной компиляции, как AspectJ.
По поводу поддержки Spring AOP. По умолчанию это актуально только для управляемых объектов Spring и AFAIK на основе AspectJ.
Сам пока не проверял, но похоже, что он позволяет использовать АОП и другие объекты (например, ткачество времени загрузки под Tomcat). Подробности - здесь.
АОП с пружинным паром по этой ссылке http://rajkrrsingh.blogspot.com/2012/10/spring-aop-tutorial.html