![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
spring
文章平均质量分 72
spring
bbhallo
这个作者很懒,什么都没留下…
展开
-
java动态代理
在《从静态代理到AOP》中提到过面向切面编程的优势,动态代理也同理。接前面的例子,为了实现一个加日志的功能,静态代理需要对CRUD分别写一个代理类,这样就增加了代码量。而动态代理,只需要一个代理类就可以代理CRUD四个类。.........原创 2022-08-13 11:03:42 · 153 阅读 · 1 评论 -
从静态代理到AOP
系统的基础业务无非就CRUD,但是当这些主干功能开发完之后,一定是会拓展系统功能的,比如加一个日志功能。这时候如果改源码,系统就很容易出问题。此时就需要一个解决方案。我发现很多编程思想,就一个核心—解耦!系统开发是有生命周期的,时不断修改的,唯有解耦,才能减小开发后期的工作量。窃以为,悟性还可以。在没接触AOP,IOC之前,在下使用MATLAB写代码,已经习惯将各个不同的方法进行封装,以此来实现解耦。.........原创 2022-08-11 18:35:01 · 91 阅读 · 0 评论 -
控制反转IOC
看上图,Dao层最初有一个接口,只有一个实现类DaoImpl。按照三层架构的原理,Service层的ServerImpl中则是需要一个DaoImpl对象,最开始,我们通常会使用new来直接创建对象。但是,随着业务的拓展,Dao层又添加了两个实现类,这时本来在ServiceImpl中new DaoImpl的代码就要要进行更改。这是个工作量很大的事情。放弃使用new来直接创建对象的做法,改用setDao来在Service层中创建一个对象。.........原创 2022-08-05 23:57:43 · 149 阅读 · 0 评论