- 6
- 0
- 约8.86千字
- 约 10页
- 2018-07-05 发布于上海
- 举报
CGLIB动态代理介绍
CGLIB库介绍
CGLIB API
简单代理
使用MethodInterceptor
使用CallbackFilter
总结
参考
CGLIB库介绍
代理提供了一个可扩展的机制来控制被代理对象的访问,其实说白了就是在对象访问的时候加了一层封装。JDK从1.3版本起就提供了一个动态代理,它使用起来非常简单,但是有个明显的缺点:需要目标对象实现一个或多个接口。假如你想代理没有接口的类呢?可以使用CGLIB库。
CGLIB是一个强大的、高性能的代码生成库。它被广泛使用在基于代理的AOP框架(例如Spring AOP和dynaop)提供方法拦截。Hibernate作为最流行的ORM工具也同样使用CGLIB库来代理单端关联(集合懒加载除外,它使用另外一种机制)。EasyMock和jMock作为流行的Java测试库,它们提供Mock对象的方式来支持测试,都使用了CGLIB来对没有接口的类进行代理。
在实现内部,CGLIB库使用了ASM这一个轻量但高性能的字节码操作框架来转化字节码,产生新类。除了CGLIB,像Groovy和BeanShell这样的脚本语言同样使用ASM来生成Java字节码。ASM使用了一个类似于SAX分析器的机制来达到高性能。我们不建议直接使用ASM,因为这样需要对JVM非常了解,包括类文件格式和指令集。
上图展示了CGLIB库相关框架以及语言之
您可能关注的文档
- (正式版)工程合同2013版本(专用合同条款)填写范例.doc
- (高二学业水平考试专题)十二必修三.ppt
- [2018北京夏季会考]高二生物考试试卷.doc
- [精品]小升初语文招生分班测考试试卷(带解析).docx
- (组装)品质控制要点总结培训课件.ppt
- [新三板法规]非上市公众公司信息披露细则.docx
- “记忆九段”世界杯赛六大项目比赛规则和考段规则.docx
- “生命至上-安全发展”安全生产知识竞赛试题库.doc
- 《00067-财务管理学》练习试题参考 答案.docx
- 《迟子建散文》赏析.docx
- 四川省南充市2024-2025学年高一下学期期末考试物理试题(含答案).pdf
- 四川省遂宁市2024-2025学年高一下学期7月期末物理试题(含答案).pdf
- 四川省资阳市2024-2025学年高一下学期7月期末物理试题(含答案).docx
- 四川省资阳市2024-2025学年高一下学期7月期末物理试题(含答案).pdf
- 北京市西城区2024-2025学年高一下学期期末物理试卷(含答案).docx
- 四川省自贡市2024-2025学年高一下学期7月期末物理试题(含答案).docx
- 四川省自贡市2024-2025学年高一下学期7月期末物理试题(含答案).pdf
- 北京市西城区2024-2025学年高一下学期期末物理试卷(含答案).pdf
- 高中生物 必修2(人教版)1.1.2 孟德尔的豌豆杂交实验(一).pptx
- 广东省潮州市饶平县2024-2025学年高一下学期期末考试物理试卷(含答案).docx
最近下载
- 大体积混凝土专项施工方案.docx VIP
- 海名斯新一代粉体聚酰胺蜡流变助剂 THIXATROL 8000系列应用介绍 THIXATROL PM 8000 series _ ELEMENTIS-202204 PCI-handout.pdf VIP
- 2026年普通高等学校招生全国统一考试(陕西卷)语文试卷及答案.doc VIP
- 2025年山东省春季高考技能考试汽车专业试题库(附答案).docx VIP
- 海名斯流变助剂在水性工业涂料中的应用.pdf VIP
- Olin水性环氧与固化剂在水性工业涂料中的应用.PDF VIP
- 车间级安全培训.pptx VIP
- GHTF-风险管理原则.pdf VIP
- 危重程度评分表.doc VIP
- 黑龙江二级造价师《土建工程》真题及解析.docx VIP
原创力文档

文档评论(0)