`

关于ASM和webAppClassLoader的疑惑

    博客分类:
  • asm
阅读更多
自己重写findClassInternal()之后,用自己的方式来加载类,这个时候所有的类(包括第三方JAR和自己项目的类)应该是存在JVM PERMGEN里面了。然后在spring的simleMetadataReader,spring会用asm 来重新从文件流里来访问一些类(比如,注解的类),然后如果有注解的话,会创建instance到heap中。



--------


我的疑问就是:前面tomcat已经把类加载到JVM中了, 这个时候srping再从文件流里访问类,这样反复的操作文件,性能不太好吧?为什么不直接从JVM里读类?

xwork2.util.finder.ClassFinder.readClassDef()也是一样的。这个方法的作用却不太懂了。。。(貌似是用来寻找struts2注解的?)

springframework.core.LocalVariableTableParameterNameDiscoverer.inspectClass(..)也是。





UPDATE:第一个疑问,应该是不同CLASSLOADER加载的类是互相不认识的
分享到:
评论

相关推荐

    cglib和asm

    CGlib和ASM是Java开发中两个非常重要的库,主要用于字节码操作和动态代理。这两个库在Java生态系统中扮演着不可或缺的角色,特别是在AOP(面向切面编程)和ORM(对象关系映射)框架中。 CGlib是一个强大的、高性能...

    asm.jar各个版本

    asm-1.3.3.jar, asm-1.3.4.jar, asm-1.3.5.jar, asm-1.4.1.jar, asm-1.4.2.jar, asm-1.4.3.jar, asm-1.4.jar, asm-1.5.1.jar, asm-1.5.2.jar, asm-1.5.3.jar, asm-2.0.jar, asm-2.1.jar, asm-2.2.1-sources.jar, asm...

    ASM4使用指南 ASM GUIDE

    ASM4,全称为Advanced Software Modeling 4,是一种高级软件建模工具,主要用于系统级的建模、...以上是关于ASM4及其使用指南的一些基本知识点,通过深入学习和实践,用户可以充分利用ASM4提高软件开发的效率和质量。

    1、ASM1064 DATASHEET; 2、ASM1064 参考原理图设计; 3、支持的SPI Flash清单

    这份文档可能包含了关于如何编程和更新ASM1064所控制系统的BIOS(基本输入输出系统)的详细指南。BIOS是计算机启动时运行的第一段软件,负责初始化硬件和加载操作系统。ASM1064在处理SATA设备的初始化和BIOS更新...

    ASM 1351.zip

    ASM 1351 是一款由ASMedia( ASM 微电子)公司开发的集成电路,主要应用于数据传输和接口控制领域。这个压缩包“ASM 1351.zip”包含了与ASM 1351相关的三个关键文件:一个固件升级工具、数据表以及设计套件。 1. **...

    ASM1061资料文件.rar

    3. 可能还会有用户手册、数据手册或者开发者指南,这些文档提供了关于ASM1061的详细规格、操作指南和应用示例,帮助用户更好地理解和使用这款芯片。 如果需要CADENCE源文件,那可能是指用CADENCE软件设计的电路板...

    一套匹配的cglib和asm的jar包。

    CGILib和ASM是两个在Java编程中广泛使用的库,特别是在动态代理和字节码操作领域。它们在创建和修改Java类的字节码时扮演着重要角色。 **CGILib** 是一个强大的、高性能的代码生成库,它在运行期扩展Java应用程序并...

    oracle ASM安装和配置

    需要注意的是,在安装过程中可能会出现警告,例如关于数字签名的问题(`oracleasm-2.6.18-164.el5-2.0.5-1.el5.i686.rpm: Header V3 DSA signature: NOKEY, keyID 1e5e0159`)。尽管如此,这些警告通常不会阻止安装...

    数据库架构和ASM

    Oracle数据库架构和Automatic Storage Management (ASM)是Oracle数据库11g Administration II (1Z0-053) OCP认证考试的重要组成部分。ASM是Oracle提供的一种自动存储管理系统,旨在简化和优化磁盘管理和性能调整。它...

    C-include-ASM.zip_asm中include asm_c语言中嵌套asm

    在标题提到的"C-include-ASM.zip_asm中include_asm_c语言中嵌套asm",我们主要讨论的是如何在C程序中使用汇编代码,并且可能涉及到如何在汇编代码中包含其他汇编模块。 首先,让我们了解一下C语言嵌套汇编的基本...

    cglib-2.2.jar asm-tree.jar asm-commons.jar asm.jar

    【标题】"cglib-2.2.jar asm-tree.jar asm-commons.jar asm.jar" 提供的是一组用于Java编程的库,它们主要用于实现动态代理和字节码操作。 【描述】"cglib动态代理模式jar包 cglib-2.2.jar asm-tree.jar asm-...

    EditPlus(附asm.acp,asm.stx)

    安装这两个文件后,EditPlus可以更好地识别和处理`.asm`文件,提供自动完成、错误检查、代码折叠等高级特性,极大地提高了编写和阅读汇编代码的效率。对于那些频繁使用EditPlus进行汇编语言编程的开发者来说,这是一...

    oracleasmlib和oracleasm-support两个依赖包.zip

    `oracleasm-support-2.1.11-2.el7.x86_64.rpm` 是Oracle ASM支持包,它包含了一些诊断和管理工具,以及用于维护和调试ASM环境的额外组件。这些工具可以帮助管理员执行以下任务: 1. **检查和修复ASM磁盘**:例如,`/...

    ASM官方文档

    ASM官方文档不仅为数据库管理员提供了一个关于ASM使用的全面指南,同时也从技术细节和管理实践角度,为数据库的存储优化和管理提供了理论和实践的参考。这些内容对于任何需要深入了解并实施Oracle ASM解决方案的专业...

    oracleasmlib以及 kmod-oracleasm驱动包

    Oracle ASM (Automatic Storage Management) 是 Oracle 公司提供的一种先进的存储管理解决方案,它为数据库和其他应用程序提供了统一的、高性能的磁盘管理功能。Oracle ASMLib(Oracle ASM Library)是与ASM配套使用...

    cglib2.2.2.jar和asm3.3.1.jar

    CGGLIB 2.2.2 和 ASM 3.3.1 是两个在Java开发中常用的库,尤其在处理动态代理和字节码操作时。它们在Java生态系统中扮演着重要角色,尤其对于那些需要深入操作类和方法的框架或库。 首先,让我们了解一下CGGLIB。...

    asm 6.0 工具集

    这套工具包括了ASM、ASM-Util、ASM-TREE和ASM-ANALYSIS等组件,每个都有其特定的功能和用途。 **ASM库**是核心部分,提供低级别的API来生成和解析Java字节码。ASM库允许开发者直接操作字节码,创建和修改类,甚至在...

    c32asm和使用说明

    C32Asm现具有如下功能: 快速静态反汇编PE格式文件(Exe、Dll等) 提供Hex文件编辑功能,功能强大 提供内存Dump、内存编辑、PE文件Dump、PE内存ImageSize修正等多种实用功能 提供内存反汇编功能,提供汇编语句...

    Asm和cglibjar包

    Asm和CGLIB是Java开发中的两个重要库,它们主要用于动态字节码操作和增强。在Java领域,字节码操作技术对于实现诸如代理、AOP(面向切面编程)、性能优化等高级功能至关重要。 **Asm库** Asm是一个Java字节码操控和...

    asm-util.jar

    asm-util-1.3.4.jar, asm-util-1.3.5.jar, asm-util-1.4.1.jar, asm-util-1.4.3.jar, asm-util-1.5.1.jar, asm-util-1.5.2.jar, asm-util-1.5.3.jar, asm-util-2.0.jar, asm-util-2.1.jar, asm-util-2.2.1-sources....

Global site tag (gtag.js) - Google Analytics