切面 

import org.aopalliance.intercept.MethodInterceptor;
import org.aopalliance.intercept.MethodInvocation;

public class MyAspect implements MethodInterceptor{
	@Override
	public Object invoke(MethodInvocation mi) throws Throwable {
		
		System.out.println("前");
		
		// 手动执行目标方法
		Object obj = mi.proceed();

		System.out.println("后");
		return obj;
	}
}

 接口

public interface UserService {
	void addUser();
	void updateUser();
}

实现类 

public class UserServiceImpl implements UserService {
	@Override
	public void addUser() {
		System.out.println("config adduser...");
	}

	@Override
	public void updateUser() {
		System.out.println("config updateUser...");
	}
}

 配置文件

<?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"
    xsi:schemaLocation="
        http://www.springframework.org/schema/beans 
        http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/aop
        http://www.springframework.org/schema/aop/spring-aop.xsd">

    <!-- 1.创建目标类 -->
  <bean id="userService" class="com.atchina.c_spring_aop.UserServiceImpl"/>
   <!-- 2.创建切面类 -->
  <bean id="myAspect" class="com.atchina.c_spring_aop.MyAspect"/>
   
   <!-- 3. aop编程
   		使用<aop:config>配置
   		
   		<aop:pointcut> 切入点
   		<aop:advisor>特殊的切面
   		      advice-ref=""  通知的引用
   		      pointcut-ref="" 切入点的引用
   		      expression="" 切入点表达式
     --> 
   <aop:config>
   		<aop:pointcut expression="execution(* *.*(..))" id="myPointCut"/>
   		<aop:advisor advice-ref="myAspect" pointcut-ref="myPointCut" />
   </aop:config>
</beans>

测试类:

import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class TestFactoryBean {
	@Test
	public void test(){
		String xmlPath = "com/atchina/c_spring_aop/applicationContext.xml";
		ApplicationContext ac = new ClassPathXmlApplicationContext(xmlPath);
		UserService userService = (UserService)ac.getBean("userService");
		
		userService.addUser();
	}
}