08 2012 档案
摘要:虽然在绝大多数情况下,系统默认提供的类加载器实现已经可以满足需求。但是在某些情况下,您还是需要为应用开发出自己的类加载器。比如您的应用通过网络来传输 Java 类的字节代码,为了保证安全性,这些字节代码经过了加密处理。这个时候您就需要自己的类加载器来从某个网络地址上读取加密后的字节代码,接着进行解密和验证,最后定义出要在 Java 虚拟机中运行的类来。下面将通过两个具体的实例来说明类加载器的开发。下面,详细的介绍自定义一个类加载器的过程。一、首先,写出一个接口,然后用一个类实现该接口,该类作为测试类,即我们自定义ClassLoader要加载的类。接口:1 /**2 * 要加载类的接口,加载该.
阅读全文
摘要:类加载器是 Java 语言的一个创新,也是 Java 语言流行的重要原因之一。它使得 Java 类可以被动态加载到 Java 虚拟机中并执行。类加载器从 JDK 1.0 就出现了,最初是为了满足 Java Applet 的需要而开发出来的。Java Applet 需要从远程下载 Java 类文件到浏览器中并执行。现在类加载器在 Web 容器和 OSGi 中得到了广泛的使用。一般来说,Java 应用的开发人员不需要直接同类加载器进行交互。Java 虚拟机默认的行为就已经足够满足大多数情况的需求了。不过如果遇到了需要与类加载器进行交互的情况,而对类加载器的机制又不是很了解的话,就很容易花大量的时间
阅读全文
摘要:类加载器在尝试自己去查找某个类的字节代码并定义它时,会先代委托给其父类加载器,由父类加载器先去尝试加载这个类,依次类推。在介绍委托模式背后的动机之前,首先需要说明一下 Java 虚拟机是如何判定两个 Java 类是相同的。Java 虚拟机不仅要看类的全名是否相同,还要看加载此类的类加载器是否一样。只有两者都相同的情况,才认为两个类是相同的。即便是同样的字节代码,被不同的类加载器加载之后所得到的类,也是不同的。比如一个 Java 类com.tao.test.ClassTest,编译之后生成了字节代码文件ClassTest.class。两个不同的类加载器ClassLoaderA和ClassLoad
阅读全文
摘要:虚拟主机 (Virtual Host)是在同一台机器搭建属于不同域名或者基于不同 IP 的多个网站服务的技术. 可以为运行在同一物理机器上的各个网站指配不同的 IP 和端口, 也可让多个网站拥有不同的域名.Apache 是世界上使用最广的 Web 服务器, 从 1.1 版开始支持虚拟主机. 本文将讲解在不同服务器 (Redhat Enterprise Linux, Ubuntu Linux, Windows) 上使用 Apache 搭建虚拟主机来搭建多个网站.主旨本文旨在让读者知道如何在同一台机器上搭建多个网站, 并附带一些使用技巧. 以操作为主, 不会过多谈及原理.目标本文是写给拥有一定的服
阅读全文
摘要:http://stackoverflow.com/q/38549/1608435
阅读全文
摘要:http://www.ubuntu-tw.org/modules/newbb/viewtopic.php?topic_id=33388&viewmode=compact&order=ASC&type=&mode=0&start=0在server fault 上面提了这个问题(http://serverfault.com/questions/417250/ubuntu-server-12-04-can-not-remove-dhcp-client)dhcp-client 是一个virtual package(http://www.debian.org/do
阅读全文
摘要:手动设置DNS服务器:# vim /etc/resolv.conf添加如下内容(这点所有Linux发行版都通用):nameserver 192.168.80.2nameserver8.8.8.8保存退出。注意:重启Ubuntu后发现又不能上网了,问题出在/etc/resolv.conf。重启后,此文件配置的dns又被自动修改为默认值。所以需要永久性修改DNS。方法如下:# vim /etc/resolvconf/resolv.conf.d/basenameserver 192.168.80.2nameserver 8.8.8.8重启networking服务使其生效:# /etc/init.d/
阅读全文
摘要:import java.io.File;import java.io.FileWriter;import java.lang.reflect.Method;public class CreateClass { private static String CLASS_NAME = "CreateClassTest"; private static String CLASS_FILE = CLASS_NAME + ".java"; public static void main(String args[]) { CreateClass mtc = new C
阅读全文
摘要:1、按字节读取文件内容2、按字符读取文件内容3、按行读取文件内容4、随机读取文件内容public class ReadFromFile { /** * 以字节为单位读取文件,常用于读二进制文件,如图片、声音、影像等文件。 */ public static void readFileByBytes(String fileName) { File file = new File(fileName); InputStream in = null; try { System.out.println("以字节为单...
阅读全文
摘要:JAVA的CALLBACK通过接口来实现。 例: 1.class A,class B 2.class A实现接口operate 3.class B拥有一个参数为operate接口类型的函数test(operate o) 4.class A运行时调用class B中test函数,以自身传入参数 5.class B已取得A,就可以随时回调A所实现的operate接口中的方法来源:http://topic.csdn.net/t/20020210/19/527607.html中最后一个人的回帖Callback机制通常用于两个类之间的协作,如下图A-----将自己作为参数--...
阅读全文
摘要:Ubuntu apache2对于电脑使用的玩家的常用软件,然后我就学习及深入的研究Ubuntu apache2,在这里和大家一起探讨Ubuntu apache2的使用方法,希望对大家有用。Ubuntu apache2配置1.Ubuntu apache2.conf 是主配置文件,httpd.conf 用户配置文件2.虚拟目录在 httpd.conf 中<VirtualHost*>DocumentRoot"路径" ServerName名称 <Direc×y"路径">allowfromallOptions+Indexes<
阅读全文
摘要:refhttp://hi.baidu.com/luohuazju/blog/item/3ca66636ddabc2340a55a9a1.htmlubuntu下部署发布环境1、使用CVS取得代码(参考LINUX上配置)export CVSROOT=:pserver:lh@192.168.5.212:/megalh 是用户名/mega 是CVSROOTcvs login然后输入密码即可登陆注:root@kiko:/usr/tmp# cvs loginThe program 'cvs' can be found in the following packages:* cvsnt* c
阅读全文
摘要:1./var/lib/mediawiki does not existapt-get install mediawiki安装在以下目录/usr/share/mediawiki/usr/share/doc/mediawiki/var/lib/mediawiki/etc/mediawiki2.在Ubuntu上安装Apache,每次重启,都会出现以下错误提示:Could not reliably determine the server’s fully qualified domain name, using 127.0.1.1 for ServerNamesudo vim /etc/apache2
阅读全文
摘要:public class GetterSetterTest { private String dBComponentName; private String pRocComponent; private String authComponentName; public String getAuthComponentName() { return authComponentName; } public void setAuthComponentName(String authComponentName) { this.authComponentName = authComponentNa...
阅读全文
浙公网安备 33010602011771号