AOP的概念和理解:使用画图的方式理解面向切面编程(AOP)
(1)创建目标接口以及实现类
package com.ssm.aop.service;
import com.ssm.aop.game.Role;
public interface RoleService {
public void printRole(Role role);
}
package com.ssm.aop.service.Impl;
import com.ssm.aop.game.Role;
import com.ssm.aop.service.RoleService;
import org.springframework.stereotype.Component;
@Component
public class RoleServiceImpl implements RoleService {
@Override
public void printRole(Role role) {
System.out.println("{id: "+role.getId()+", "
+"role_name:"+role.getRoleName()+", "
+"note:"+role.getNote()+"}");
}
}
(2)创建切面类(用于增强目标类的方法)
package com.ssm.aop.aspect;
import org.aspectj.lang.annotation.*;
@Aspect
public class RoleAspect {
@Before("execution(* com.ssm.aop.service.Impl.RoleServiceImpl.printRole(..))")
public void before()
{
System.out.println("before...");
}
@After("execution(* com.ssm.aop.service.Impl.Rol