牛骨文教育服务平台(让学习变的简单)

一、概述。

上一篇博客讲述了用注解的形式实现AOP现在讲述另外一种AOP实现的方式利用XML来实现AOP。

二、代码演示。

准备工作参照上一篇博客《菜鸟学习Spring——60s使用annotation实现简单AOP》

目录结构:

其实比起上一篇博客中用annotation来实现AOP的方式我们只要把SecurityHandler.java和配置文件applicationContext.xml更改为下面内容就可以了。下面我把这两个文件的代码写下来。

SecurityHandler.java

package com.tgb.spring;

public class SecurityHandler{

	private void checkSecurity(){
		System.out.println("checkSecurity");

	}

}

applicationContext.xml

<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans"
	     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	     xmlns:aop="http://www.springframework.org/schema/aop"
	     xmlns:tx="http://www.springframework.org/schema/tx"
	     xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
           http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsd
           http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.0.xsd">

<bean id="userManager" class="com.tgb.spring.UserManagerImpl" />
<bean id="securityHandler" class="com.tgb.spring.SecurityHandler"/>
<aop:config>
	<aop:aspect id="securityAspect" ref="securityHandler">

		 <aop:pointcut id="addAddMethod" expression="execution(* com.tgb.spring.*.*(..))" />
		<aop:before method="checkSecurity" pointcut-ref="addAddMethod" />
	</aop:aspect>
</aop:config>
</beans>

效果图:

三、总结。

XML实现的AOP对代码没有了侵入性并且能够灵活的配置不用重新编译。但是有个缺点就是配置文件太多了不好管理。