Я знаю AspectJ, Spring и JBoss. Существуют ли другие зрелые и широко принятые рамки?Каковы основные структуры/библиотеки для Java AOP?
ответ
Google, Guice может выполнять АОП на неконечном впрыскивается экземпляры.
AspectwerkZ также широко используется. check it is merged with AspectJ
AspectWerkz был объединен с AspectJ давно: http://aspectwerkz.codehaus.org/index-merge.html – Vadzim
спасибо за информацию, я отредактирует ответ для других –
Я думаю, что все они, AspectJ, SprintAOP и JBossAOP, широко используются. Но в некоторых аспектах они различны. Что вам нужно сделать, так это выбрать наиболее подходящий для вашего проекта.
Например, вот Spring AOP против популярных зависимости инжекционной библиотеки AspectJ Spring AOP vs AspectJ
Зависит от того, на какой платформе вы работаете, но CDI, являясь частью спецификации Java EE 6, имеет некоторые довольно приличные возможности AOP в нем сейчас. Рик Хайтауэр отлично справляется со своими возможностями в статье здесь: http://cdisource.org/site/2011/05/cdi-aop-tutorial/
Кажется, что Guice поддерживает AOP посредством перехвата метода. Но также поддерживает аннотацию такими атрибутами, как '@NotOnDays ({Days.SUNDAY, Days.SATURDAY})', как показано в этом [пример] (https://github.com/google/guice/wiki/AOP#example- запрещая-метод-звонки-на-выходные дни)! – Akshat