[[toc]]

实验七 没有接口的情况

在目标类没有实现任何接口的情况下,Spring会自动使用cglib技术实现代理。为了证明这一点,我们做下面的测试:

1、创建目标类

请确保这个类在自动扫描的包下,同时确保切面的切入点表达式能够覆盖到类中的方法。
@Service
public class EmployeeService {

  1. public void getEmpList() {<br /> System.out.println("方法内部 com.atguigu.aop.imp.EmployeeService.getEmpList");<br /> }

}

2、测试

@Autowired<br />    private EmployeeService employeeService;

@Test<br />    public void testNoInterfaceProxy() {<br />        employeeService.getEmpList();<br />        System.out.println();<br />    }

3、Debug查看

①没有实现接口情况

实验7 没有接口的情况 - 图1

②有实现接口的情况

实验7 没有接口的情况 - 图2

同时我们发现:Mybatis调用的Mapper接口类型的对象其实也是动态代理机制 实验7 没有接口的情况 - 图3

上一个实验 回目录