动态代理

来源:4-2 Spring的Cache注解不够灵活应该怎么办?

慕粉1469504588

2022-07-01

1.那使用AOP抽出这些共性代码 性能会不好吗 底层好像使用的是反射 封装前后性能会不同吗?
2. 那在现实业务里 很多这种共性代码 都需要这样抽出来好点吗?
写回答

1回答

大能老师

2022-07-01

①有一定性能开销,但是影响不大,spring里面大量使用aop,所以性能基本不需要太多担心。大多数时候aop的性能开销甚至都没有你业务逻辑的开销大。关于性能问题同学也可以自行测试一下,可以写一个接口,一个用切面,一个不用,然后使用jmeter进行压测看看性能表现。spring的aop不完全使用反射,也会结合动态字节码增强技术。


②需要结合具体业务场景分析,一般比较少在切面编写大量业务代码,技术代码会比较常见,像缓存,日志,鉴权等。而对于共性的业务代码,可以使用面向对象的思想对象进行抽象与封装,也比较便于扩展。


0
1
慕粉1469504588
谢谢老师
2022-07-04
共1条回复

Java分布式架构设计与开发实战

项目贯穿式讲解,真正将理论与实战相结合

325 学习 · 74 问题

查看课程