`
文章列表
cglib 是一个强大的, 高效高质的代码生成库.简单的使用方法Enhancer中有几个常用的方法, setSuperClass和setCallback, 设置好了SuperClass后, 可以使用create制作代理对象了 Enhancer enhancer = new Enhancer();  enhancer.setSuperclass(EnhancerDemo.class);   ...
ClassLoader一个经常出现又让很多人望而却步的词,本文将试图以最浅显易懂的方式来讲解 ClassLoader,希望能对不了解该机制的朋友起到一点点作用。 要深入了解ClassLoader,首先就要知道ClassLoader是用来干什么的,顾名思义,它就是用来加载Class文件到JVM,以供程序使用的。我们知道,java程序可以动态加载类定义,而这个动态加载的机制就是通过ClassLoader来实现的,所以可想而知ClassLoader的重要性如何。 看到这里,可能有的朋友会想到一个问题,那就是既然ClassLoader是用来加载类到JVM中的,那么ClassLoader又是如何被加载呢? ...

Java RMI协议

    博客分类:
  • java
Java RMI (Remote Method Invocation 远程方法调用)是用Java在JDK1.1中实现的,它大大增强了Java开发分布式应用的能力。Java作为一种风靡一时的网络开发语言,其巨大的威力就体现在它强大的开发分布式网络应用的能力上,而RMI就是开发百分之百纯Java的网络分布式应用系统的核心解决方案之一。其实它可以被看作是RPC的Java版本。但是传统RPC并不能很好地应用于分布式对象系统。而Java RMI 则支持存储于不同地址空间的程序级对象之间彼此进行通信,实现远程对象之间的无缝远程调用。RMI目前使用Java远程消息交换协议JRMP(Java Remote Me ...
简介: Eclipse Memory Analyzer(MAT)是著名的跨平台集成开发环境 Eclipse Galileo 版本的 33 个组成项目中之一,它是一个功能丰富的 JAVA 堆转储文件分析工具,可以帮助你发现内存漏洞和减少内存消耗。本文主要介绍如何安装配置 Memory Analyzer,并结合一个实例,介绍如何利用 MAT 来进行堆转储文件分析,找到内存泄露的根源。 概述 对于大型 JAVA 应用程序来说,再精细的测试也难以堵住所有的漏洞,即便我们在测试阶段进行了大量卓有成效的工作,很多问题还是会在生产环境下暴露出来,并且很难在测试环 境中进行重现。JVM 能够记录下问题发生时 ...
Jconsole简介: Jconsole是一个JMX兼容的监视工具。它使用Java虚拟机的JMX机制来提供运行在Java平台的应用程序的性能与资源耗费信息。 开始jconsole Jconsole应用程序位于JDK_HOME/bin目录下。 命令语法: 可以使用jconsole监视本地应用程序和远程应用程序。 注意:在开发阶段或者原型阶段,使用jconsole监视本地应用程序是很有用的,但是不建议在生产环境中使用,因为jconsole本身也将显著的消耗系统资源。推荐使用远程监视来将jconsole和被监视平台孤立开。查看jconsole详细语法:jconsole - Java M ...
JConsole是一个基于JMX的GUI工具,用于连接正在运行的JVM,不过此JVM需要使用可管理的模式启动。如果要把一个应用以可管理的形式启动,可以在启动是设置com.sun.management.jmxremote。JConsole能够提供被监控虚拟机的内存、线程、类的加载以及MBean等信息,从而能够对服务器的运行情况进行实时监控。  其实在 JDK 5 中已经新加入了这个功能了. 现在的 JDK 已经内置了对 VM 的监控功能. JDK 6 中这个工具变的更加好用了. 关于 JDK 5 中如何使用这个工具可以参考这里: http://java.sun.com/developer/tech ...
目录(?)[-] u              jps的用法 u              jstack的用法 u              jstat的用法 u              jmap的用法 u              jinfo的用法 u              jconsole的用法 u              jdb的用法 jstack -- 如果java程序崩溃生成core文件,jstack工具可以用来获得core文件的java stack和native stack的信息,从而可以轻松地知道java程序是如何崩溃和在程序何处发生问题。另外,js ...
显示java进程内存使用的相关信息 jmap pid #打印内存使用的摘要信息 jmap –heap pid #java heap信息 jmap -histo:live pid #统计对象count ,live表示在使用 jmap -histo pid >mem.txt #打印比较简单的各个有多少个对象占了多少内存的信息,一 ...
这是一对继承于InputStream和OutputStream的类,用于本地文件读写(二进制格式读写并且是顺序读写,读和写要分别创建出不同的文件流对象); 本地文件读写编程的基本过程为: ①  生成文件流对象(对文件读操作时应该为FileInputStream类,而文件写应该为FileOutputStream类); ②  调用FileInputStream或FileOutputStream类中的功能函数如read()、write(int b)等)读写文件内容; ③  关闭文件(close())。 实例:流文件读写 流文件的单元是字节,所以它不但可以读写文本文件,也 ...
Page-encoding specified in XML prolog (UTF-8) is different from that specified in page directive (utf-8)  把一個Web應用從Tomcat-5.0.28移植部署到Tomcat-6.0.16後,訪問頁面報錯:     org.apache.jasper.JasperException:     /default/header.jsp(1,1) Page-encoding specified in XML prolog (UTF-8) is different from that specif ...
oracle的分析函数over 及开窗函数 一:分析函数overOracle从8.1.6开始提供分析函数,分析函数用于计算基于组的某种聚合值,它和聚合函数的不同之处是对于每个组返回多行,而聚合函数对于每个组只返回一行。 下面通过几个例子来说明其应用。                                        1:统计某商店的营业额。              date       sale     1           20     2           15     3           14     4           18     5        ...
Oracle常用dump命令,记录一下备查。一.Memory Dumps1).Global AreaALTER SESSION SET EVENTS 'immediate trace name global_area level n';1 包含PGA2 包含SGA4 包含UGA8 包含indrect memory2).Library CacheALTER SESSION SET EVENTS 'immediate trace name library_cache level n';1 library cache统计信息2 包含hash table histogram3 包含object hand ...
从oracle9i开始,oracle提供了web方式的sqlplus界面,通过isqlplus,用户可以不需要安装任何oracle客户端,就能够通过浏览器方式的sqlplus进行数据操作与数据库管理。普通的数据库用户可以直接通过isqlplus的网址http://ip:port/isqlplus登陆,进入该网址后会直接进入数据库用户登陆界面,使用数据库中的普通用户即可登陆;但如果是DBA用户登陆isqlpus,则需要首先配置isqlplus dba的用户和口令,然后输入网址http://ip:port/isqlplus/dba,进入该网址后首先会弹出一个登陆框,要求先输入iSQL*Plus DB ...
oracle 中,对于一个提交的sql语句,存在两种可选的解析过程, 一种叫做硬解析,一种叫做软解析.一个硬解析需要经解析,制定执行路径,优化访问计划等许多的步骤.硬解释不仅仅耗费大量的cpu,更重要的是会占据重要的们闩(latch)资源,严重的影响系统的规模的扩大(即限制了系统的并发行), 而且引起的问题不能通过增加内存条和cpu的数量来解决。 之所以这样是因为门闩是为了顺序访问以及修改一些内存区域而设置的,这些内存区域是不能被同时修改。当一个sql语句提交后,oracle会首先检查一下共享缓冲池(shared pool)里有没有与之完全相同的语句,如果有的话只须执行软分析即可,否则就 ...
<!--正文 begin-->   参考网上整理了重要的配置文件db_name = "51cto"   一个数据库标识符,应与CREATE DATABASE 语句中指定的名称相对应。instance_name = 51cto在多个例程使用相同服务名的情况下,用来唯一地标识一个数据库例 ...
Global site tag (gtag.js) - Google Analytics