AOP---在软件业,AOP为Aspect Oriented Programming的缩写
1.普通方式
<!-- 配置切面
1.引入aop标签-->
<aop:config>
<!-- 切点:pointcut,哪些类,哪些方法被调用的时候,自动调用代理类里面的方法expression:哪些类,哪些方法被调用的时候id:这个条件的名字test.UserinfoService里面所有的方法 将会被代理 within(test.UserService..*)-->
<aop:pointcut expression="execution(* test.UserinfoService.*(..))" id="pc_userinfo"/>
<!-- 哪个代理类userinfoProxy(切面)去处理这个被调用的方法呢,用这个类的哪个方法 呢 -->
<aop:aspect id="userinfoAspect" ref="userinfoProxy">
<!--aop:before前置 ,aop:around 环绕 ,aop:after 后置-->
<aop:before method="checkAuth" pointcut-ref="pc_userinfo"/></aop:aspect>
</aop:config>
2.注解方式
@Aspect
public class UserinfoProxy {
//通知=方法
//Before通知 After Around
@Before("execution(* test.UserinfoService.save(..))")
public void before(){
System.out.println("我会在调用方法前");
}