spring 学习有没有好的学习方法,学到 aop 这一块有点蒙了。

2020-06-06 12:01:24 +08:00
 MarkLeeyun
3947 次点击
所在节点    Java
17 条回复
jaylee4869
2020-06-06 14:22:42 +08:00
得有反射基础,先学习一下静态代理,然后深刻理解动态代理,然后才是 AOP 。两年前我看过一篇文章才真真明白。
刚好找到了: https://juejin.im/post/5a99048a6fb9a028d5668e62
guoyuchuan
2020-06-06 14:32:53 +08:00
最笨的办法就不要怂,干就是了。
hello2060
2020-06-06 14:54:08 +08:00
不要关注名词,看看代码例子你就知道 aop 是干啥的能干啥了。如果还想知道为啥,java 有反射啊。
ChaYedan666
2020-06-06 15:21:33 +08:00
seanxx
2020-06-06 16:25:40 +08:00
先学会用,原理以后再理解
MarkLeeyun
2020-06-06 16:28:30 +08:00
@jaylee4869 谢谢,,动态代理这种东西,没咋用过一时半会还真的整不明白。。。
MarkLeeyun
2020-06-06 16:29:04 +08:00
@ChaYedan666 好的,晚上就来拜读。
damai0419
2020-06-06 16:37:02 +08:00
建议:
1. 了解 aop 的名词,简单了解两个代理。
2. 简单写一个,通过代理执行方法的小 demo,能在目标方法执行前后分别打印一句话即可。
3. 写一个通过 aop 打印请求接口日志的小功能,包括 url,ip,参数,结果什么。
这会儿应该算入门简简单单了解一点 aop 了。
lower
2020-06-06 16:44:05 +08:00
不要纠结那么多,就当是你定义的一个类 /方法在某个特定时机下被框架调用执行了而已。
yanzhiling2001
2020-06-06 18:48:33 +08:00
aop 就是按需引入功能,不是单纯的抽离出来公共方法,在需要的地方插入。
用法就是 在方法执行前和后 分别做什么事。就是切面切点那种概念,多敲 demo 就理解了
q8164305
2020-06-06 18:56:56 +08:00
不知道你能不能理解代码即配置,你写的代码对于框架就是一份配置罢了,框架会在适当的时机调用你的代码,而这个时机通常都是框架定义的,你只要按照它的规则写就行了
MarkLeeyun
2020-06-06 21:21:02 +08:00
@damai0419 嗯呢好的。谢谢你呀。
MarkLeeyun
2020-06-06 21:21:27 +08:00
@lower 这也是我正在学框架的纠结的地方。。
cheng6563
2020-06-06 22:10:37 +08:00
aop 就是全局的方法拦截器啊。因为 Java 没有直接支持这种功能,只有靠动态代理来实现。
iplayio2019
2020-06-06 22:51:12 +08:00
和 WordPress 里的 Hook 是不是有雷同之处?
mazai
2020-06-06 23:03:39 +08:00
了解之前先了解静态和动态代理,动态代理有分为不同的方式,这些都得了解,AOP 也是基于 Proxy 和 InvocationHandler 来完成的,本质都离不开反射
MarkLeeyun
2020-06-11 12:35:32 +08:00
谢谢大家。。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/679134

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX