Spring AOP 为什么需要代理类?
AOP中代理类的职责是什么?它的作用是什么?
What is the responsibity of the proxy class in AOP? What is the role of that?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
AOP中代理类的职责是什么?它的作用是什么?
What is the responsibity of the proxy class in AOP? What is the role of that?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(1)
动态代理用于在bean的方法之前/之后执行附加代码。最简单的例子是事务处理:
@Transactional
注释),则代理启动一个新的事务并委托给真实方法因此您的代码变得与事务无关。当一个事务bean被注入另一个bean时,它实际上是被注入的代理(与您的bean类型相同)
并且代理是动态的,因为spring在编译时不知道所有bean的类型,所以它必须在运行时创建代理。
Dynamic proxies are used to execute additional code before/after methods of your beans. The most trivial example is transaction handling:
@Transactional
) the proxy starts a new transaction and delegates to the real methodThus your code becomes transaction-agnostic. And when a transactional bean is injected into another one, it is actually the proxy that gets injected (which is of the same type as your bean)
And proxies are dynamic, because spring does not know at compile time the types of all your beans, so it has to create the proxies at runtime.