Spring AOP AspectJ XML 配置示例17 Mar 2025 | 6 分钟阅读 Spring 允许您在 xml 文件中定义方面、通知和切入点。 在上一页,我们已经看到了使用注解的 AOP 示例。现在我们将通过 xml 配置文件来查看相同的示例。 让我们看看用于定义通知的 xml 元素。
要了解 AOP 概念、它的优势等,请访问此处 AOP 概念教程1) aop:before 示例AspectJ Before 通知在实际的业务逻辑方法之前应用。您可以在此处执行任何操作,例如转换、身份验证等。 创建一个包含实际业务逻辑的类。 文件: Operation.java现在,创建包含 before 通知的方面类。 文件: TrackOperation.java现在创建定义 bean 的 applicationContext.xml 文件。 文件:applicationContext.xml现在,让我们调用实际的方法。 文件:Test.java输出正如您所看到的,在调用 msg()、m() 和 k() 方法之前打印了附加的关注点。 2) aop:after 示例AspectJ after 通知在调用实际的业务逻辑方法之后应用。它可以用于维护日志、安全、通知等。 这里,我们假设 Operation.java、TrackOperation.java 和 Test.java 文件与 aop:before 示例中给出的相同。 现在创建定义 bean 的 applicationContext.xml 文件。 文件:applicationContext.xml输出您可以看到在调用 msg()、m() 和 k() 方法之后打印了附加的关注点。 3) aop:after-returning 示例通过使用 after returning 通知,我们可以在通知中获取结果。 创建包含业务逻辑的类。 文件: Operation.java创建包含 after returning 通知的方面类。 文件: TrackOperation.java文件:applicationContext.xml文件:Test.java现在创建调用实际方法的 Test 类。 输出您可以看到返回值打印了两次,一次由 TrackOperation 类打印,另一次由 Test 类打印。 4) aop:around 示例AspectJ around 通知在调用实际的业务逻辑方法之前和之后应用。 创建一个包含实际业务逻辑的类。 文件: Operation.java创建包含 around 通知的方面类。 您需要在通知方法中传递 PreceedingJoinPoint 引用,以便我们可以通过调用 proceed() 方法来继续请求。 文件: TrackOperation.java文件:applicationContext.xml文件:Test.java现在创建调用实际方法的 Test 类。 输出您可以看到在调用 msg() 和 display 方法之前和之后打印了附加的关注点。 5) aop:after-throwing 示例通过使用 after throwing 通知,我们可以在 TrackOperation 类中打印异常。让我们看看 AspectJ AfterThrowing 通知的示例。 创建包含业务逻辑的类。 文件: Operation.java创建包含 after throwing 通知的方面类。 这里,我们还需要传递 Throwable 引用,以便我们可以在此处拦截异常。 文件: TrackOperation.java文件:applicationContext.xml文件:Test.java现在创建调用实际方法的 Test 类。 输出 |
我们请求您订阅我们的新闻通讯以获取最新更新。