JAVA
文章平均质量分 78
roland101
我很强!
展开
-
调优JVM内存,并解决OutOfMemoryError,StackOverflowError等异常问题
JVM 调优,首先应从内存开始,尤其是在真正的的web服务部署的时候。因为真正的web服务会比开发的时候花费更多的内存,用来处理多用户并发的情况。本人多次吃过这方面的亏,所以整理一下,希望能给别人以帮助。 这个年头变啦,内存变得如大白菜,每个新装的机器都2G以上的内存,甚至4G,也不是什么新闻。而软件‘吃’内存的情况则变化不大(除了VIsta)。但 JAVA诞生的时候可原创 2008-03-19 17:12:00 · 6720 阅读 · 4 评论 -
分析 Tomcat catalina.bat 脚本
Catalina.bat是tomcat所有脚本中最重要的脚本,完成几乎所有的tomcat操作。如启动,关闭等等,都是由catalina.bat脚本来完成的。接下来,我将对Tomcat catalina.bat脚本进行分析。 首先省去catalina.bat开头诸多注解,这些注解主要是讲解各个变量是干什么的。需要的话,自己看下英文就可以了。这里就不翻译了。rem Guess CATALINA_HOM...2008-04-14 21:11:00 · 86 阅读 · 0 评论 -
原来Java还可以这样写——实现‘内部 接口’
在看高人写的代码的时候,发现原来接口还可以这样实现。很有趣啊!接口A:package com.why;public interface InterfaceA { public void sayA();}接口B:package com.why;public interface InterfaceB { public void sayB();}实现A,Bpackage com.why;public c...2008-04-27 13:21:00 · 229 阅读 · 0 评论 -
(转)TOMCAT源码分析(消息处理)
本文转自:http://www.dev-share.com/java/99953page2.html0:前言 我们知道了tomcat的整体框架了, 也明白了里面都有些什么组件, 以及各个组件是干什么用的了。http://www.csdn.net/Develop/read_article.asp?id=27225我想,接下来我们应该去了解一下 tomcat 是如何处理jsp和servl...2008-04-27 15:01:00 · 61 阅读 · 0 评论 -
Tomcat 迁移到 Jboss5.1日志
从Tomcat升级到JBoss5.1真是一个痛苦的过程,可能遇到很多问题。以下是我碰到的问题,及解决方法。一.Hibernate不兼容问题。 JBoss5.1中内置了hibernate,以前4.x的时候还是在server/default/lib里,但在JBoss5.1的时候已经升级到了common/lib下面。4.x时我直接删掉hibernate等的...2009-11-27 18:26:04 · 138 阅读 · 0 评论 -
Tomcat5.5 Hibernate3 配置数据库连接池
一、在tomcat/common/lib目录下,添加数据库驱动。二、修改server.xml,在<GlobalNamingResources>里面添加如下内容 <Resource name="jdbc/DBPool" type="javax.sql.DataSource" username="xxx" password="xxx" driverClassName="org.gj2008-11-26 16:37:00 · 175 阅读 · 0 评论 -
JConsole远程连接
JConsole很好用,可以解决很多疑难杂症。但远程连接需要设置一下Java opt才可以使用。一下是步骤: 1.在java opt下添加如下内容: 如果是无须验证添加 JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.port=12345" JAVA_OPT...原创 2010-03-05 10:05:02 · 553 阅读 · 0 评论 -
Tomcat5.5 Hibernate3 配置数据库连接池2
上文配置的方式,后来发现,会增加部署的负担。后来找个一个可以不再tomcat里改文件的方式。 在工程/WebRoot/META-INF/下面,新建一个context.xml文件。内容如下:<?xml version='1.0' encoding='utf-8'?><Context> <Resource auth="Container" description="DB ...2008-12-09 11:33:00 · 93 阅读 · 0 评论 -
Java 向图片内嵌入图片程序
写一个向图片内嵌入另一张图片程序,新的需要嵌入的图片需要旋转,并放在该放的位置上。 步骤:准备工作:将旧的图片,需要嵌入图片的地方,透明化处理,建议使用png(gif有锯齿)。 1.加载俩张图片。 2.创建一个新的画布(即图片)与原来的图片一边大。 3.将需要嵌入的图片,旋转,并写入到画布应该放的位置...原创 2010-01-08 17:37:47 · 887 阅读 · 0 评论 -
Jconsole本地连接
最近发现有些电脑无法直接使用Jconsole,在网上找了一下: 需要在java启动参数里添加-Djava.rmi.server.hostname=localhost,这样就可以访问了。2010-08-04 23:18:48 · 663 阅读 · 0 评论 -
java 内部工作线程介绍
Java程序运行的过程中,不但包括开发者启动的主线程和子线程。还包括很多内部线程。了解这些线程,对了解Java工作原理,及复杂环境下debug会有帮助。 首先需要查看Java程序的内部线程,我使用以下两种方法查看Java下的线程: 1.Jconsole——JDK自带的JMX查看管理工具(GUI)。 2.Linux下使用kill -3 processId ...2009-09-08 17:37:31 · 151 阅读 · 0 评论 -
Tomcat 多端口,多虚拟主机配置方法
Tomcat多使用在开发环境里,但有时也做生产环境。在生产环境下多会碰到,需要在一个tomcat下放置多个站点的情况。有时还需要同时打开多个不同的端口,接受多个域名请求的情况。通常这种情况会开启多个tomcat实例。这种方法有如下利弊:优点:1.每个站点相互独立,互相不受干扰。不会因为一个站点繁忙导致,其它站点受影响。 2.可以对tomcat,做高度自...原创 2010-02-05 15:38:17 · 543 阅读 · 0 评论 -
使用Proguard扰乱器保护Java代码
Java代码的安全性一直都是问题,JVM机制导致,Java很容易被反编译。使对方很容易得到你的原程序,即使反编译后有一点区别,但基本不会影响对方获取你的代码,和构思。 最近做项目,程序需要部署到对方服务器,但公司不希望核心代码外泄。但程序又是Java编写的,所以想到了,代码扰乱器,免费的Java扰乱器不是很多。最后找到了proguard,试用了一下,发现还不错。现在简...原创 2010-12-22 22:22:52 · 509 阅读 · 0 评论 -
分析 Tomcat startup.bat 启动脚本
闲来无事,平常容器多使用tomcat,所以今天就想打开tomcat启动脚本看看。都说tomcat是纯Java的,这东西只有自己打开看看才能知道。呵呵! 说来tomcat的脚本确实不难,启动脚本更是没有几行,以下是我解释的tomcat startup.bat脚本。rem Guess CATALINA_HOME if not defined 确定该命令(脚本)是否在tomcat目录里set CURR...2008-04-13 20:50:00 · 86 阅读 · 0 评论 -
JVM 调优 技巧 总结
写了好几篇关于这个方向的文章了,但连自己都感觉写的有点乱,没有总结。所以现在把所有方法整理到一起,如果以后又发现新的,我继续补充到这篇文章里。 这篇是技巧性的文章,如果要找关于GC或者调整内纯的文章,看我其他几篇文章。因为是JVM 调优总结,所以废话少说。从各方面一共收集到以下几个方法: 1.升级 JVM 版本。如果能使用64-bit,使用64-bit JVM。 基本上没什么好解释的,很简单将JV...2008-03-26 22:43:00 · 68 阅读 · 0 评论 -
介绍Java GC种类,并更换 调优GC
调整JVM GC(Garbage Collection),可以极大的减少由于GC工作,而导致的程序运行中断方面的问题,进而适当的提高Java程序的工作效率。但是调整GC是以个极为复杂的过程,由于各个程序具备不同的特点,如:web和GUI程序就有很大区别(Web可以适当的停顿,但GUI停顿是客户无法接受的),而且由于跑在各个机器上的配置不同(主要cup个数,内存不同),所以使用的GC种类也会不同。...2008-03-21 17:19:00 · 109 阅读 · 0 评论 -
JDK NEW TOOLS——jps、jinfo、jstat、jmap、jconsole
最近压力测试和调优Liferay portal,所以需要找到一种工具,可以比较好的监测VM工具。本来想使用商用工具,但偶然间发现SUN 的JDK中新添了几个工具,并且非常好用。秉承着有免费,不用商用的原则。开始使用新的JDK工具,以下简单介绍一下这几种工具。(注:本文章下的所有工具都存在JDK5.0以上版本的工具集里,同javac一样,不须特意安装)我一共找到以下五个工具:jinfo:可以输出并修原创 2008-03-16 21:45:00 · 13229 阅读 · 2 评论 -
介绍Java GC种类,并更换 调优GC
调整JVM GC(Garbage Collection),可以极大的减少由于GC工作,而导致的程序运行中断方面的问题,进而适当的提高Java程序的工作效率。但是调整GC是以个极为复杂的过程,由于各个程序具备不同的特点,如:web和GUI程序就有很大区别(Web可以适当的停顿,但GUI停顿是客户无法接受的),而且由于跑在各个机器上的配置不同(主要cup个数,内存不同),所以使用的GC种类原创 2008-03-21 17:19:00 · 20341 阅读 · 1 评论 -
JVM 调优 技巧 总结
写了好几篇关于这个方向的文章了,但连自己都感觉写的有点乱,没有总结。所以现在把所有方法整理到一起,如果以后又发现新的,我继续补充到这篇文章里。 这篇是技巧性的文章,如果要找关于GC或者调整内纯的文章,看我其他几篇文章。因为是JVM 调优总结,所以废话少说。从各方面一共收集到以下几个方法: 1.升级 JVM 版本。如果能使用64-bit,使用64-bit JVM。原创 2008-03-26 22:43:00 · 4931 阅读 · 2 评论 -
分析 Tomcat startup.bat 启动脚本
闲来无事,平常容器多使用tomcat,所以今天就想打开tomcat启动脚本看看。都说tomcat是纯Java的,这东西只有自己打开看看才能知道。呵呵! 说来tomcat的脚本确实不难,启动脚本更是没有几行,以下是我解释的tomcat startup.bat脚本。rem Guess CATALINA_HOME if not defined 确定该命原创 2008-04-13 20:50:00 · 6624 阅读 · 0 评论 -
分析 Tomcat catalina.bat 脚本
Catalina.bat是tomcat所有脚本中最重要的脚本,完成几乎所有的tomcat操作。如启动,关闭等等,都是由catalina.bat脚本来完成的。接下来,我将对Tomcat catalina.bat脚本进行分析。 首先省去catalina.bat开头诸多注解,这些注解主要是讲解各个变量是干什么的。需要的话,自己看下英文就可以了。这里就不翻译了。rem Guess CATAL原创 2008-04-14 21:11:00 · 7368 阅读 · 1 评论 -
原来Java还可以这样写——实现‘内部 接口’
在看高人写的代码的时候,发现原来接口还可以这样实现。很有趣啊!接口A:package com.why;public interface InterfaceA { public void sayA();}接口B:package com.why;public interface InterfaceB { public void sayB();}实现A,Bpackage com.why;pu原创 2008-04-27 13:21:00 · 3261 阅读 · 2 评论 -
(转)TOMCAT源码分析(消息处理)
本文转自:http://www.dev-share.com/java/99953page2.html0:前言 我们知道了tomcat的整体框架了, 也明白了里面都有些什么组件, 以及各个组件是干什么用的了。http://www.csdn.net/Develop/read_article.asp?id=27225我想,接下来我们应该去了解一下 tomcat 是如何处理jsp和servl转载 2008-04-27 15:01:00 · 2152 阅读 · 0 评论 -
Eclipse插件总结
最近忙于项目,所以连博客都荒废了。今天补上! 最近的项目使用了最近的框架,Struts2+Spring3+Hibernate3。最大的不同就是Struts2,由于要说的话太多,就先不说了,留着以后找个时间,好好谈谈!今天就说说使用Eclipse的感受。 现在好像Java里,大部分项目都是用Eclipse了,所以也没什么好说的,大家都用啊!但由于Eclipse的框架更新很快,而且插件很多,所以每原创 2008-06-29 23:10:00 · 2513 阅读 · 2 评论 -
Tomcat5.5 Hibernate3 配置数据库连接池
一、在tomcat/common/lib目录下,添加数据库驱动。二、修改server.xml,在里面添加如下内容 name="jdbc/DBPool" type="javax.sql.DataSource" username="xxx" password="xxx" driverClassName="org.gjt.mm.mysql.D原创 2008-11-26 16:37:00 · 2584 阅读 · 0 评论 -
Eclipse插件总结
最近忙于项目,所以连博客都荒废了。今天补上! 最近的项目使用了最近的框架,Struts2+Spring3+Hibernate3。最大的不同就是Struts2,由于要说的话太多,就先不说了,留着以后找个时间,好好谈谈!今天就说说使用Eclipse的感受。 现在好像Java里,大部分项目都是用Eclipse了,所以也没什么好说的,大家都用啊!但由于Eclipse的框架更新很快,而且插件很多,所以每...2008-06-29 23:10:00 · 87 阅读 · 0 评论 -
JDK NEW TOOLS——jps、jinfo、jstat、jmap、jconsole
最近压力测试和调优Liferay portal,所以需要找到一种工具,可以比较好的监测VM工具。本来想使用商用工具,但偶然间发现SUN 的JDK中新添了几个工具,并且非常好用。秉承着有免费,不用商用的原则。开始使用新的JDK工具,以下简单介绍一下这几种工具。(注:本文章下的所有工具都存在JDK5.0以上版本的工具集里,同javac一样,不须特意安装)我一共找到以下五个工具:jinfo:可以输出并修...2008-03-16 21:45:00 · 59 阅读 · 0 评论 -
调优JVM内存,并解决OutOfMemoryError,StackOverflowError等异常问题
JVM 调优,首先应从内存开始,尤其是在真正的的web服务部署的时候。因为真正的web服务会比开发的时候花费更多的内存,用来处理多用户并发的情况。本人多次吃过这方面的亏,所以整理一下,希望能给别人以帮助。 这个年头变啦,内存变得如大白菜,每个新装的机器都2G以上的内存,甚至4G,也不是什么新闻。而软件‘吃’内存的情况则变化不大(除了VIsta)。但 JAVA诞生的时候可不...2008-03-19 17:12:00 · 91 阅读 · 0 评论 -
Eclipse 生成webservice Client与JAX-WS不兼容问题解决
我平时开发WebService的客户端,总是直接使用Eclipse生成,这样来的快,也很方便。 头一阵子其它组的人用,JAX-WS制作了一个WS,我们使用Ecllipse生成后。发现调用后,无法返回结果,等待数分钟没有返回,不知道为什么。而对方那边已经将方法内容全都注掉。导致当时非常郁闷。心想如果这样,开发方式,以及过去的代码都要改。 无奈,硬着头皮去找为什么,查了两边的堆栈都没有...原创 2010-12-07 23:57:53 · 909 阅读 · 0 评论