本月博客排行
-
第1名
龙儿筝 -
第2名
johnsmith9th -
第3名
wy_19921005 - zysnba
- sgqt
- lemonhandsome
年度博客排行
-
第1名
宏天软件 -
第2名
青否云后端云 -
第3名
龙儿筝 - gashero
- wallimn
- vipbooks
- benladeng5225
- wy_19921005
- fantaxy025025
- e_e
- zysnba
- ssydxa219
- sam123456gz
- javashop
- arpenker
- tanling8334
- kaizi1992
- xpenxpen
- wiseboyloves
- xiangjie88
- ranbuijj
- ganxueyun
- xyuma
- sichunli_030
- wangchen.ily
- jh108020
- lemonhandsome
- zxq_2017
- jbosscn
- Xeden
- luxurioust
- johnsmith9th
- lzyfn123
- zhanjia
- forestqqqq
- ajinn
- nychen2000
- wjianwei666
- hanbaohong
- daizj
- 喧嚣求静
- mwhgJava
- silverend
- kingwell.leng
- lchb139128
- lich0079
- kristy_yy
- jveqi
- java-007
- sunj
最新文章列表
自定义ClassLoader在一个JVM启动多个Peer实例
为了解决在同一个JVM中启动多个peer进行测试而带来的烦恼,通过大量收集资料最后找到一种可行的解决方案,而由于国内博客系统未提及相关解决方案,特贡献出来,以免大家少走弯路。
在我们开始相对两个或则更多的peer的交互进行测试时,都会遇到下面这种情况:
net.jxta.exception.PeerGroupException: Only a single instance of the W ...
ClassLoader
public class ClassLoaderTest
{
/**
Java的类加载器采用了一种父委托机制来加载需要的类.每个ClassLoader都关联一个父ClassLoader,
除了BootstrapClassLoader(启动类加载器)外.Java默认实现了三个类加载器:
BootstrapClassLoader(最顶层的类加载 ...
Java中getResourceAsStream的用法
Java中getResourceAsStream的用法
首先,Java中的getResourceAsStream有以下几种:
1. Class.getResourceAsStream(String path) : path 不以’/'开头时默认是从此类所在的包下取资源,以’/'开头则是从ClassPath根下获取。其只是通过path构造一个绝对路径,最终还是由ClassLoader获 ...
走出类加载器迷宫
这是前几天在看类加载器机制时搜到的一篇旧文,网上搜了搜相应的中文资料,感觉很多意思没有翻译出来,这两天我试着自己翻译了一下,供同道参考。英文文章地址:Find a way out of the ClassLoader maze
走出类加载器迷宫(本人翻译,转载请注明出处)
系统类加载器, 当前类加载器, 上下文类加载器? 你应该用哪一个?
By Vladimir Roub ...
Find a way out of the ClassLoader maze
Find a way out of the ClassLoader maze
System, current, context? Which ClassLoader should you use?
By Vladimir Roubtsov, JavaWorld.com, 06/06/03
June 6, 2003
When should I useThread.getContextCla ...
classloader举个例子
今天下午被一个同事问起,什么情况下需要用到ContextClassLoader
另一篇博客http://kyfxbl.iteye.com/blog/1900855已经介绍过了,这里就再举个更简单的例子
一个很常见的例子,是在JNDI里的。JNDI的入口类在rt.jar里,是由bootstrap classloader加载的;而JNDI的SPI实现类,则是由各厂商提供的,一般在classpath里 ...
Class.getResourceAsStream和ClassLoader.getResourceAsStream的区别
1、两个都可以用于从 classpath 里面进行资源读取, classpath包含classpath中的路径和classpath中的jar。
2、两个方法的区别是资源的定义不同, 一个主要用于相对与一个object取资源,而另一个用于取相对于classpath的资源,用的是绝对路径。
3、在使用Class.getResourceAsStream 时, 资源路径有两种方式, 一种以 / 开头 ...
JVM----ClassLoader
当运行一个程序的时候,JVM启动,运行bootstrap classloader,该ClassLoader加载java核心API(ExtClassLoader和AppClassLoader也在此时被加载),然后调用ExtClassLoader加 ...
tomcat源码阅读(三)——ClassLoader背景知识
前几天想了一下,最近主要学习linux和httpd,所以tomcat源码阅读先放一放,可能到9月份左右再继续。不过先把已经写好的几篇陆续贴上来
tomcat用到很多ClassLoader相关的代码,如果缺乏这方面的背景知识,阅读源码会遇到很多障碍,所以本文首先总结一下这方面的内容,和tomcat源码的关系不大
1 标准的ClassLoader体系
1.1 bootstrap
bootst ...
tomcat源码阅读(二)——ClassLoader及catalina启动
1、ClassLoader结构
tomcat的ClassLoader模型如上图,主要是为了满足servlet规范中类隔离的要求(见JSR154的Section9.4、9.6、9.7)
1.1 Bootstrap
这个类加载器和普通的JAVA应用一样,都是由JVM启动的,加载%JAVA_HOME%/jre/lib下的JAR包,如rt.jar等
通常情况下,Bootstrap和Extensi ...
Java 读取Properties文件
前提:在一个webproject中,在source目录下有一个配置文件settings.property,有一个Class叫Test.
1. 直接在Test.java中的main()方法中读取settings.properties文件,可以有如下3种方法:
Properties properties = new Properties();
1) pro ...
深入探讨 Java 类加载器
深入探讨 Java 类加载器
实现自定义类加载器,需要继承ClassLoader类,重写findClass方法即可:
1. 例如下面是一个加载其它地方的class文件的自定义类加载器:
package classloader;
import java.io.ByteArrayOutputStream;
import java.io.File;
...
ClassLoader 装载 链接 初始化的细节研究
ClassLoader中三个阶段:装载 , 链接 , 初始化
装载即找到对应的.class文件加载进去jvm
链接的时候有三个步骤:验证,准备,解析三个小步骤 验证是为了确保这个.class文件在结构来说是符合java语言的语法结构的。准备阶段的时候,会为该.class文件的静态资源分配存储空间,并为起赋予默认值。 最后阶段是解析 是将所有的符号引用转换为真实的引用,在这一步是会对该.cla ...
Class.forName和ClassLoader.loadClass的比较
详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcytpo7
Class的装载分了三个阶段,loading(加载),linking(链接)和initializing(初始化),分别定义在The J ...
IllegalAccessError
今天在工作中遇到了这样一个Error,IllegalAccessError。java.lang.IllegalAccessError: class sun.reflect.GeneratedConstructorAccessor3 cannot access its superclass sun.reflect.ConstructorAccessorImpl。本系统使用了OSGI,初步分析, ...
Groovy深入探索——Groovy的ClassLoader体系
Groovy中定义了不少ClassLoader,本文将介绍其中绝大多数Groovy脚本都会涉及到的,也是最主要的3个ClassLoader:RootLoader、GroovyClassLoader和GroovyClassLoader.InnerLoader。
注:以下分析的Groovy源代码来自Groovy 2.1.3。
Java的ClassLoader
顾名思义,Java的ClassLoad ...
安卓高手之路之ClassLoader(二)
因为ClassLoader一定与虚拟机的启动有关系,那么必须从Zygote的启动开始看代码。下面就分析一下这些代码,行数不多:
int main(int argc, const char* const argv[])
{
// These are global variables in ProcessState.cpp
//ProcessState.cpp中可能要用到一些 ...
由osgi引出的classLoader的大总结(整理理解ClassLoader) .
转载请注明出处(corey)
最近在研究osgi,在osgi里面里面有个很重要的东西,就是ClassLoader,所以,在网上搜集了一些资料,整理一下,
并加入了自己的一些理解;
(1)jvm的装载过程以及装载原理
所谓装载就是寻找一个类或是一个接口的二进制形式并用该二进制形式来构造代表这个类或是这个接口的class对象的过程,
其中类或接口的名称是给定了的。当然名称也可以通过计算得到,但是更常 ...
类加载器--ClassLoader
一、什么是 类加载器(ClassLoader)?
类加载器(ClassLoader),用来加载 Java字节码(.class)到 Java虚拟机(JVM)中。
它使得 Java 类可以被动态加载到 Java虚拟机中并执行 。
为了完成加载类的这个职责,java.lang.ClassLoader类的基本职责 就是根据一个指定的 类名称,找到或者生成 其对应的字节代码, ...
JDK中Class对象的getResource方法
class对象的getResource()方法、Classloader的静态方法getSystemResource()方法和实例方法getResource()方法都是从classpath路径中获取资源,如声音,图片等。但是它 ...