开发者社区> 问答> 正文

Spring 代理默认使用标准的jdk动态代理来代理对象,有什么要求吗?

Spring 代理默认使用标准的jdk动态代理来代理对象,有什么要求吗?

展开
收起
真的很搞笑 2021-10-26 21:41:20 518 0
1 条回答
写回答
取消 提交回答
  • Spring 代理默认使用标准的jdk动态代理来代理对象,要求被代理的对象必须至少实现1个接口。Spring代理也可以用cglib来代理对象,cglib是用来代理class的,而不是代理interface的。我们建议代理对象实现接口,通过jdk动态代理来代理对象。也就是说:被代理的业务对象如果没有实现接口,那么会用cglib动态代理来代理;如果业务对象实现了接口,那么会用jdk动态代理来代理。

    2021-10-26 21:41:54
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
云栖社区特邀专家徐雷Java Spring Boot开发实战系列课程(第20讲):经典面试题与阿里等名企内部招聘求职面试技巧 立即下载
微服务架构模式与原理Spring Cloud开发实战 立即下载
阿里特邀专家徐雷Java Spring Boot开发实战系列课程(第18讲):制作Java Docker镜像与推送到DockerHub和阿里云Docker仓库 立即下载