对SpringAOP理解

 

对SpringAOP的理解:

1、首先,它是面向切面编程,它同样也是一种思想。这种思想也尤为重要!

在咱们日常工作上会经常遇到重复性代码,比如说:事务、日志.....   

 

我们需要在很多类里面需要把这些代码同时写进去,这样肯定就非常麻烦。 比如事务: 就需要在我们的Service层中开启事务、提交、回滚事务; 这些事情我们都要写。 

但是能不能不写?? 

 

当然也是可以的, SpringAOP思想就给我们解决了这个问题。

我们可以把这样共有的代码抽出来封装起来,然后切入到我们想要切入的类里,这样的话可以极大的方便了我们代码的书写,同时也减少了代码冗余,提高了代码的复用性。

 

2、同时,SpringAOP的实现,它是靠动态代理实现的。

比如我们要注入、或代理的这个对象,它有接口情况下,它就会使用java原生的动态代理来实现、完成这个代理的创建。

如果它没有实现任何的接口,它就会采用cglib的技术来实现、完成这个代理的创建。

 

在日常工作当中,AOP最常出现在事务、日志相关的方面。 AOP和IOC在项目当中也是无处不在,它的这种思想是非常重要的。

posted @ 2020-09-25 03:27  青翎  阅读(302)  评论(0)    收藏  举报