JAVA
井中月
BYRer!
展开
-
Java中Set的深入研究
Set和数学中的集合是同一个概念,就是没有重复元素的集合。这篇文章主要论述了Set是如何实现"没有重复元素"(no duplicate elements)的,以及阐述了什么是“重复”(duplicate),是相同的地址空间?是equals的返回值为true?是compareTo的返回值为0 ?还是有相同的hashCode?本文还给出了在什么情况下使用什么样的Set的建议。注:本文不涉及转载 2008-11-06 15:28:00 · 1092 阅读 · 0 评论 -
各种系统架构图及其简介
转载请保留出处,不胜人生一场醉汇总。以下文字和架构图均在本人相关系统设计和架构方案中有所应用。5L{2b:e&G0原文出处:http://space.itpub.net/6517/viewspace-6096548[(]~H2Aar01.Spring架构图 Spring是一个开源框架,是...2010-03-01 11:35:35 · 157 阅读 · 0 评论 -
一个题目:超大量数据的排序
一个文件里,有一堆int,把它们排序一下,输出到另外一个文件。这个问题很简单了,把int读入内存,排序一下,输出到文件。但是,如果加个条件:数据量巨大,内存无法容纳,那这个问题该怎么解决呢?嗯,直接说答案:1) 按内存能放下的规模,顺序读入一批批的数据,排序,输出到不同的文件2) 现在得到一堆文件,每个文件里是排好序的3) 对这些文件进行两两归并,就是把两个各自有序的文件,归并到一个有序的文件...原创 2010-09-22 03:40:05 · 265 阅读 · 0 评论 -
使用svn——项目的目录布局
Subversion有一个很标准的目录结构,是这样的。比如项目是proj,svn地址为svn://proj/,那么标准的svn布局是svn://proj/|+-trunk+-branches+-tags这是一个标准的布局,trunk为主开发目录,branches为分支开发目录,tags为tag存档目录(不允许修改)。但是具体这几个目录应该如何使用,svn并没有明...原创 2011-01-07 21:12:12 · 66 阅读 · 0 评论 -
设置半透明的JMenuBar
源作:陈思羽.更新:龚德伟. 2008.07.20效果图更新的内容:优化了paint方法,不需要每次都创建一个BufferedImage.修正了鼠标开时时菜单项背景不会变成半透明的问题支持菜单普通情况下和鼠标选中时两种半透明设定修正鼠标选中菜单时,文字变成不透明import java.awt.AlphaComposite;import java.a...原创 2011-01-17 17:33:48 · 435 阅读 · 0 评论 -
一道笔试题
问题说明:计算一个整形数组里的连续元素和的最大值 例:{9, -12, 120, 8, -20, 100, 30, -89, 20}结果是{120, 8 , -20, 100, 30}的和最大,为 238 解决方法: class Find_Max_Sum { public static void main(String[] args) { ...原创 2010-09-28 23:05:42 · 74 阅读 · 0 评论 -
jstat,jmap,jconsole,jvisualvm,jps,jinfo等JDK系统监控、性能调优工具
JProfiler在java程序性能调试方便表现优越,推荐使用。也可使用下面jdk自己的一些工具。所有工具都在JDK/bin目录下, jconsole和jvisualvm为GUI图形化工具,其他为命令行。jvisualvm: GUI工具,可监控、性能评估、故障诊断主机上所有java进程的cpu,内存,线程使用情况,类似于JProfiler,严重推荐。jinfo:可以输出并修改运行时的j...原创 2010-10-11 13:57:08 · 118 阅读 · 0 评论 -
java jvm 参数 -Xms -Xmx -Xmn -Xss 调优总结
常见配置举例 堆大小设置JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制.32位系统 下,一般限制在1.5G~2G;64为操作系统对内存无限制.我在Windows Server 2003 系统,3.5G物理内存,JDK5.0下测试,最大可设置为1478m.典型设置: jav...原创 2010-10-25 13:41:40 · 114 阅读 · 0 评论 -
几个重要的TCP/IP选项解析(Java Socket)
1. SO_LINGER / SO_REUSEADDR TCP正常的关闭过程如下(四次握手过程):(FIN_WAIT_1) A ---FIN---> B(CLOSE_WAIT)(FIN_WAIT_2) A <--ACK-- B(CLOSE_WAIT) (TIME_WAIT)A <--FIN-...原创 2010-10-28 13:22:08 · 89 阅读 · 0 评论 -
Socket TCP连接和断开过程
在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接,如图1所示。 (1)第一次握手:建立连接时,客户端A发送SYN包(SYN=j)到服务器B,并进入SYN_SEND状态,等待服务器B确认。 (2)第二次握手:服务器B收到SYN包,必须确认客户A的SYN(ACK=j+1),同时自己也发送一个SYN包(SYN=k),即SYN+ACK包,此时服务器B进入SYN_RECV...原创 2010-11-03 09:22:01 · 368 阅读 · 0 评论 -
数据库链接池(DBCP)配置参考
链接池不但能提高数据库的访问效率,也能有效地控制自己使用的资源,如果链接泄露也能及时发现问题。下面将Tomcat中使用的DBCP配置参数列出,仅供参考。username传递给JDBC驱动的用于建立连接的用户名password传递给JDBC驱动的用于建立连接的密码url传递给JDBC驱动的用于建立连接的URLdriver...原创 2012-01-31 17:20:43 · 72 阅读 · 0 评论 -
Java抓图软件
以下代码不是本人所写,乃是从网上搜到,记录下来供以后参考。 package remotescreen;import java.awt.AWTException;import java.awt.BorderLayout;import java.awt.Cursor;import java.awt.Graphics;import java.awt.Rectan...2010-01-19 09:52:21 · 79 阅读 · 0 评论 -
16进制字符串与byte数组互转(转载)
import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.IOException;import java.io.ObjectInputStream;import java.io.ObjectOutputStream;import java.io.Seri...原创 2010-01-13 21:07:35 · 133 阅读 · 0 评论 -
byte,int,char,double的相互转换(java)
//整数到字节数组的转换 public static byte[] intToByte(int number) { int temp = number; byte[] b=new byte[4]; for (int i=b.length-1;i>-1;i--){ b[i] = new Integer(temp&...原创 2010-01-13 21:05:37 · 369 阅读 · 1 评论 -
JAVA中的集合
在使用Java的时候,我们都会遇到使用集合(Collection)的时候,但是Java API提供了多种集合的实现。总的说来,Java API中所用的集合类,都是实现了Collection接口,他的一个类继承结构如下: Collection Collection Collection转载 2008-11-06 15:48:00 · 561 阅读 · 0 评论 -
Java垃圾收集机制
1.垃圾收集算法的核心思想 Java语言建立了垃圾收集机制,用以跟踪正在使用的对象和发现并回收不再使用(引用)的对象。该机制可以有效防范动态内存分配中可能发生的两个危险:因内存垃圾过多而引发的内存耗尽,以及不恰当的内存释放所造成的内存非法引用。 垃圾收集算法的核心思想是:对虚拟机可用内存空间,即堆空间中的对象进行识别,如果对象正在被引用,那么称其为存活对象,反之,如果对象不转载 2008-11-06 19:49:00 · 1031 阅读 · 0 评论 -
XML的四种解析器(dom,sax,jdom,dom4j)原理及性能比较
版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明http://solecjj.blogbus.com/logs/11842935.html1)DOM(JAXP Crimson解析器) DOM是用与平台和语言无关的方式表示XML文档的官方W3C标准。DOM是以层次结构组织的节点或信息片断的集合。这个层次结构允许开发人员在树中寻找特定信息。分析该结构通常需要加载整个文...原创 2009-03-10 16:08:04 · 79 阅读 · 0 评论 -
用Ant编译、junit测试、生成测试报告、最终自动发mail
测试通过的版本如下:Eclipse:3.3.2jdk:1.6junit:3.8ant:1.7(1.7之前的版本好像还不提供mail功能。。。)<!-- JUnit build script using ant 1.7 --><project name="JunitTestProject" default="mail" basedir="."><property nam...原创 2009-03-19 14:15:13 · 475 阅读 · 0 评论 -
Java中的UDP协议编程
一. UDP协议定义 UDP协议的全称是用户数据报,在网络中它与TCP协议一样用于处理数据包。在OSI模型中,在第四层——传输层,处于IP协议的上一层。UDP有不提供数据报分组、组装和不能对数据包的排序的缺点,也就是说,当报文发送之后,是无法得知其是否安全完整到达的。二. 使用UDP的原因 它不属于连接型协议,因而具有资源消耗小,处理速度快的优点,所以通常音频、视频和普通...原创 2009-11-18 14:34:43 · 114 阅读 · 0 评论 -
windows下openldap的安装与java操作测试
windows下openldap的安装与测试1.openldap的下载:可以通过 openldap for windows 在google上搜索到。目前最新版本是:2.2.19下载地址:http://download.bergmans.us/openldap/openldap-2.2.19/openldap-2.2.19-db-4.3.21-openssl-0.9.7e-wi...原创 2009-07-01 15:36:09 · 71 阅读 · 0 评论 -
log4j 日志文件相对路径
1、在Tomcat 5.5中的Log4j日志文件的默认相对路径是:bin目录下, 如果要配置到你的应用程序的目录下只需这样: >如果用myEclipse开发环境下用:"../webapps/你的工程目录/日志文件名"; >如果直接用tomcat5.5启动:"./webapps/你的工程目录/日志文件名"; 就是一个点和两个点的问题。 这里要注意的...2009-07-26 21:32:43 · 149 阅读 · 0 评论 -
JAVA打包后读取自身JAR中的文件
在编写完Java程序后,打包成Jar时发布,会发现找不到Jar文件中的图片和文本文件,其原因是程序中载入图片或文本文件时,使用了以当前工作路径为基准的方式来指定文件和路径。这与用户运行Jar包时的当前工作路径并不一致。 问题分析: 例如:以Windows为例说明,以下是开发项目“AAA”的部分代码,开发和调试时的根路径为D:\aaa,这样程序运行时当前路径为"D:\aaa",大家可...2009-07-26 21:48:13 · 414 阅读 · 0 评论 -
System.getProperty()参数大全
java.versionJava Runtime Environment versionjava.vendorJava Runtime Environment vendorjava.vendor.urlJava vendor URLjava.homeJava...2009-07-26 22:22:36 · 67 阅读 · 0 评论 -
System.getProperties()
1、java 通过System.getProperties()获取系统参数 Properties props=System.getProperties(); //系统属性 System.out.println("Java的运行环境版本:"+props.getProperty("java.version...原创 2009-07-26 22:26:00 · 269 阅读 · 0 评论 -
UML类图关系(泛化 、继承、实现、依赖、关联、聚合、组合)
继承指的是一个类(称为子类、子接口)继承另外的一个类(称为父类、父接口)的功能,并可以增加它自己的新功能的能力,继承是类与类或者接口与接口之间最常见的关系;在Java中此类关系通过关键字extends明确标识,在设计时一般没有争议性; 实现指的是一个class类实现interface接口(可以是多个)的功能;实现是类与接口之间最常见的关系;在Java中此类关系通过关键字implem...原创 2013-04-26 22:32:12 · 129 阅读 · 0 评论