摘要: 简介: 类加载器(class loader)是 Java™ 中的一个很重要的概念。类加载器负责加载 Java 类的字节代码到 Java 虚拟机中。本文首先详细介绍了 Java 类加载器的基本概念,包括代理模式、加载类的具体过程和线程上下文类加载器等,接着介绍如何开发自己的类加载器,最后介绍了类加载器在 Web 容器和 OSGi™ 中的应用。类加载器是 Java 语言的一个创新,也是 Java 语言流行的重要原因之一。它使得 Java 类可以被动态加载到 Java 虚拟机中并执行。类加载器从 JDK 1.0 就出现了,最初是为了满足 Java Applet 的需要而开发出来的。Java Appl 阅读全文
posted @ 2011-01-25 00:22 JStar 阅读(559) 评论(0) 推荐(0) 编辑
摘要: 原文:http://www.infoq.com/cn/articles/cf-java-byte-code在一般的Java应用开发过程中,开发人员使用Java的方式比较简单。打开惯用的IDE,编写Java源代码,再利用IDE提供的功能直接运行Java 程序就可以了。这种开发模式背后的过程是:开发人员编写的是Java源代码文件(.java),IDE会负责调用Java的编译器把Java源代码编译成平台无关的字节代码(byte code),以类文件的形式保存在磁盘上(.class)。Java虚拟机(JVM)会负责把Java字节代码加载并执行。Java通过这种方式来实现其“编写一次,到处运行(Writ 阅读全文
posted @ 2011-01-23 22:52 JStar 阅读(719) 评论(0) 推荐(0) 编辑
摘要: 最近换工作到新单位已经快3个月了,这里主要是从事产品研发工作,为了更好的管理产品的发布,我们使用apache来作为产品的发布服务器,每次发布产品只需要在指定目录建立目录将产品相关发布包及文档放入即可,公司项目组使用人员只需要访问服务器即可下载需要的版本,减少了版本发布的工作。以下是apache的配置记录: 在http.conf中加入如下代码(如有虚拟主机配置,加载到虚拟主机配置段内)Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->1 Alia 阅读全文
posted @ 2011-01-23 12:45 JStar 阅读(26433) 评论(0) 推荐(2) 编辑
摘要: 如果某个版本提交错误,需要恢复到之前的一个revision,怎么处理?这个问题一直困扰了我很久,因为Team菜单里没有直接的回滚项。而Compare With和Replace With里面也没有选择具体Revision的项。如果只是要回滚一个文件,可以选Compare With->Revisions,然后需要回滚的版本上右键选择Get Contents,然后提交。如果选择Get Revision或者在Replace With中选择Revisions,实际上只是Switch到该Revision而已,不能做Commit操作。所以如果是目录的话,一般只能先把该目录Switch到需要回滚的那个版 阅读全文
posted @ 2011-01-23 12:32 JStar 阅读(1763) 评论(3) 推荐(0) 编辑
摘要: 本文有部分内容是对我之前写的Redhat5下安装Apache2与Subversion1.6.15的补充。1.介绍通过源代码编译的方式来安装Subversion我们需要两个文件,http和subversion。httpd是web服务器,用来通过web访问 subversion。我本人用的是httpd-2.2.6和subversion-1.4.5,它们的下载地址是:a.下载httpd-2.2.6.tar.gz http://httpd.apache.org/b.下载subversion-1.4.6.tar.gz http://subversion.tigris.org/2.新建一个用户:svnro 阅读全文
posted @ 2011-01-16 00:57 JStar 阅读(719) 评论(0) 推荐(0) 编辑
摘要: (原文)http://www.goodluck4u.com/?p=127下载了 10201_database_linux_x86_64.cpio.gz 文件,解压方法如下:1. gunzip 10201_database_linux_x86_64.cpio.gz得到10201_database_linux_x86_64.cpio文件2. cpio -idmv <10201_database_linux_x86_64.cpio即可在当前目录下解压出来 阅读全文
posted @ 2011-01-15 23:46 JStar 阅读(1196) 评论(0) 推荐(0) 编辑
摘要: 一、安装步骤1.编译安装 apache2# tar xzvf httpd-2.2.15.tar.gz# cd httpd-2.2.15## 一定主要要加入“–enable-dav”和“–enable-dav-fs”,这样apache会直接把这两个用于支持SVN的扩展编译。“–prefix=PATH”是apache在硬盘上的安装位置。# ./configure --enable-dav --enable-dav-fs --enable-so --enable-mods-shared=most --prefix=/usr/local/apache2# make# make install##启动验 阅读全文
posted @ 2011-01-15 23:40 JStar 阅读(1591) 评论(0) 推荐(0) 编辑
摘要: 今天在Jboss5.1下开发JMS时,调用如下代码出错:[代码]错误异常信息为:[代码]解决办法:  登陆jboss5.1的http://localhost:8090/jmx-console/,在这个jboss/service=JNDIView/list/Global JNDI Namespace下查找,只有ConnectionFactory!  因此把发送消息的java类中的QueueConnectionFactory修改一下即可,如下:   QueueConnectionFactory factory = (QueueConnectionFactory)ctx.lookup("QueueC 阅读全文
posted @ 2011-01-09 14:49 JStar 阅读(2122) 评论(0) 推荐(0) 编辑
摘要: Subversion有一个很标准的目录结构,是这样的。比如项目是proj,svn地址为svn://proj/,那么标准的svn布局是 svn://proj/ | +-trunk +-branches +-tags 这 是一个标准的布局,trunk为主开发目录,branches为分支开发目录,tags为tag存档目录(不允许修改)。但是具体这几个目录应该如何使 用,svn并没有明确的规范,更多的还是用户自己的习惯。 对于这几个开发目录,一般的使用方法有两种。我更多的是从软件产品的角度出发 (比如freebsd),因为互联网的开发模式是完全不一样的。第一种方法,使用trunk作为主要的开发目录.. 阅读全文
posted @ 2011-01-04 23:56 JStar 阅读(49565) 评论(0) 推荐(5) 编辑
摘要: 引子 异常能不能作为控制流,这个争论其实已经存在了很长时间,最近gdpglc同学发的一连四张《验证String是不是整数,用异常作判断怎么了!》的帖子(前三张已经被投为隐藏帖,要看的话可以从第四张进去)令这个争端又一次成为JE主版的话题。 gdpglc同学的语气比较激烈,但发表自己观点是值得肯定的,何况异常可以作为控制流的观点,JavaEye创始人肉饼同学在2003年的时候也提出过,并且也引发了一些讨论,就在这帖子的2楼:http://www.javaeye.com/topic/2038。无论是03年还是今天,反方的主流意见都无外乎两点:一是圣经上说不行,列举《Effective Java》 阅读全文
posted @ 2011-01-04 23:49 JStar 阅读(838) 评论(0) 推荐(0) 编辑