上一页 1 ··· 18 19 20 21 22 23 24 25 26 ··· 30 下一页

2013年11月13日

JAVA类的加载(4) ——类之间能够隔离&类占用的资源能回收

摘要: 一、类加载体系类加载方式:代理模式 或 双亲委托例1: 1 package classloader.system; 2 3 public class Example { 4 public static void main(String[] args) { 5 /*应用的类加载器是AppClassLoader,首先委托父ClassLoder(ExtClassLoder)从他自己的资源池中(jre/lib/ext)找这个类, 6 * 在这之前,ExtClassLoder又委托父ClassLoader(BootStrapClassLoader)从jre/l... 阅读全文

posted @ 2013-11-13 11:51 gogoy 阅读(1240) 评论(0) 推荐(0) 编辑

2013年11月12日

JAVA类的加载(3) ——类加载后能够有效运行

摘要: 例1: 1 package classobject; 2 3 import java.lang.reflect.Constructor; 4 import java.lang.reflect.InvocationTargetException; 5 import java.util.Arrays; 6 import java.lang.reflect.Method; 7 8 9 10 11 public class Reflect_Example { 12 13 public static void main(String[] args) { 14 ... 阅读全文

posted @ 2013-11-12 17:04 gogoy 阅读(470) 评论(0) 推荐(0) 编辑

JAVA类的加载(1) ——类的加载及类加载器介绍

摘要: 过程:当程序主动使用某个类时,如果该类还未被加载到内存中,系统会通过加载、连接、初始化三个步骤来对该类进行初始化,有时候称为类加载(类初始化)类加载 定义:类加载 指的是将类的class文件读入内存,并为之创建一个java.lang.Class对象类也是一种对象:每个类是一批具有相同特征的对象的抽象,而系统中的所有类,它们实际上也是对象,它们都是java.lang.Class的实例类加载器:类的加载由类加载器完成,JVM提供的类加载器称为系统类加载器,开发者可以通过继承ClassLoader基类来创建自己的类加载器使用不同的类加载器,可以从不同的来源加载类的二进制数据,通常有如下几种来源: . 阅读全文

posted @ 2013-11-12 14:24 gogoy 阅读(666) 评论(0) 推荐(0) 编辑

2013年11月6日

MVC(JSP+JavaBean+Servlet)入门实例:用户登陆验证

摘要: 一、JSP、JavaBean、Servlet的区别1、JSP:JSP通过在标准的HTML页面中嵌入Java代码,其静态的部分无效Java程序控制,只有那些需要从数据库读取或需要动态生成的页面内容,才使用Java脚本控制;JSP必须在JSP服务器内运行,JSP文件必须生成Servlet才能执行。例如一个静态的页面first.jsp,访问该页面,会在$tomcat_home\work\Catalina\localhost\webDemo\org\apache\jsp生成first_jsp.java、first_jsp.class例子:// first.jsp,如果为first.html,不会生成对 阅读全文

posted @ 2013-11-06 20:06 gogoy 阅读(1904) 评论(1) 推荐(0) 编辑

Intellij IDEA使用总结

摘要: http://totohust.iteye.com/blog/1035550另外,ctrl+shift+B可以查看一个类的subtype(s)。包括subclass(s) or implementation(s)另外ctrl+H可以查看一个类继承关系,也能达到你要的效果1. IDEA内存优化先看看你机器本身的配置而配置.\IntelliJ IDEA 8\bin\idea.exe.vmoptions------------------------------------------Xms64m-Xmx256m-XX:MaxPermSize=92m-ea-server-Dsun.awt.keepW 阅读全文

posted @ 2013-11-06 14:46 gogoy 阅读(665) 评论(0) 推荐(0) 编辑

idea debug jboss 应用遇到到问题记录

摘要: idearun Jboss是没有问题的,能启动Jboss成功;但是debug Jboss时,报ERROR: Cannot load this JVM TI agent twice, check your java command line for duplicate jdwp options.解决:修改jboss的启动脚本(windows是run.bat),注释掉如下这一行(.bat注释加::)。1 set JAVA_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n %JAVA_OPTS%参考: 阅读全文

posted @ 2013-11-06 14:12 gogoy 阅读(731) 评论(0) 推荐(0) 编辑

2013年10月29日

JAVA类的加载(2) ——按需加载(延迟加载)

摘要: 1、例1: 1 /* 2 按需加载:当你不去实例化Cat时,Cat相关类都不会被加载,即按需加载(需要时加载) 3 1、先加载父类 4 2、初始化类 5 3、类只加载一次(暂且这么认为)——缓存 6 7 加载方法:1、隐式加载 2、显式加载 8 */ 9 public class Example {10 public static void main(String[] args) throws ClassNotFoundException {11 System.out.println("\n准备实例化Cat");12 Cat cat = new Cat... 阅读全文

posted @ 2013-10-29 19:08 gogoy 阅读(2725) 评论(0) 推荐(0) 编辑

JAVA线程池

摘要: 背景:系统启动一个线程的成本是比较高的,因为它涉及到与操作系统交互。在这种情况下,使用线程池可以很好地提高性能,尤其是当程序中需要创建大量生存期很短暂的线程时,更应该考虑使用线程池 原理:线程池在系统启动时就创建大量空闲线程,程序将一个Runnable对象传给线程池,线程池将会启动一条线程来执行该对象的run方法,当run方法执行结束后,该线程并不会死亡,而是再次返回线程池中成为空闲状态,等待执行下一个Runnable对象的run方法;此外,使用线程池可以有效控制系统中的并发线程的数量 使用线程池来执行线程任务的步骤如下:(1)调用Executors类的静态工厂方法创建一个Exec... 阅读全文

posted @ 2013-10-29 16:00 gogoy 阅读(364) 评论(0) 推荐(0) 编辑

2013年10月23日

使用visualvm远程监控JVM

摘要: 参考:http://blog.sina.com.cn/s/blog_4e90b3ba0100muco.html1、首先要修改JDK中JMX服务的配置文件,以获得相应的权限:在jdk-1.6.0_26/jre/lib/management找到jmxremote.password.template,两种方法:(1)使用该方法,则对应于步骤2中的(1)(2)(4) a. 将jmxremote.password.template文件复制为jmxremote.password b. 调整jmxremote.access和jmxremote.password的权限为只读写,可以使用如下命令 ch... 阅读全文

posted @ 2013-10-23 19:41 gogoy 阅读(408) 评论(0) 推荐(0) 编辑

2013年10月15日

Session概述(选自WebX)

摘要: http://openwebx.org/docs/Webx3_Guide_Book.html#d0e90848.1.Session概述8.1.1.什么是SessionHTTP协议是无状态的,但通过session机制,就能把无状态的变成有状态的。Session的功能就是保存HTTP请求之间的状态数据。有了session的支持,就很容易实现诸如用户登录、购物车等网站功能。在Servlet API中,有一个HttpSession的接口。你可以这样使用它:例8.1.在Java代码中访问session在一个请求中,保存session的状态// 取得session对象HttpSession session 阅读全文

posted @ 2013-10-15 19:41 gogoy 阅读(359) 评论(0) 推荐(0) 编辑

上一页 1 ··· 18 19 20 21 22 23 24 25 26 ··· 30 下一页

导航