自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(43)
  • 资源 (2)
  • 收藏
  • 关注

原创 Java代理的配置,以及部分细节

Java写的网络应用程序也可以配置代理,目前支持HTTP代理和Socks5代理。最简单的配置方法如下:HTTP代理配置:Properties props = System.getProperties();props.setProperty("http.proxyHost", httpProxyServerAddress);props.setProperty("http.proxyPor

2010-05-14 16:23:00 630

转载 SOCKS5协议

RFC1928 - SOCKS Protocol Version 5  RFC原文  中文 RFC1929 - Username/Password Authentication for SOCKS V5   RFC原文  中文 SOCKS5协议的官方说明和中文文档连接

2010-04-03 10:19:00 312

原创 一个解析名值对儿的正则表达式

//s*(//w+?)//s*[:=]//s*([/"]?)([^/"]+?)//2//s*(?:,|;|$)可以将类似以下的内容解析出来a=a,b="bb",c=ccc,d:dddd;e=ee解析结果为:a=>ab=>bbc=>cccd=>dddde=ee

2009-12-29 10:52:00 236

原创 关于Quartz的使用问题

在Spring下使用Quartz,网上有很多教程,直接拿来用就可以,但是再我的使用过程中,按照网上的方式却出现的问题,我有两个web应用部署在tomcat中,两个web应用都包含quartz功能,Spring和Quartz的jar包部署在$TomcatHome/common/lib目录下,当我关掉其中一个web应用的时候,却发现另一个应用中的quartz也关闭了,查了Spring和Quartz代码

2009-09-19 22:25:00 316

原创 多线程环境下使用log4j输出各线程的标识,区分各线程输出的内容

在多线程环境下,我们可能需要输出很多信息,每个线程产生的日志信息可能都是类似的,我们如何区分出哪些信息是同一个线程输出的呢?其实log4j已经提供了多种实现方式:1.使用PatternLayout,在设定输出格式的时候增加%t参数,这样会输出各个线程的线程名称,这样我们就可以根据线程名称区分哪些内容是同一个线程输出出来的。2.使用NDC,也是基于PatternLayout,在设定输出格式的

2009-03-29 10:44:00 6268 1

转载 在windows系统中打开文件或URL地址

try{     Runtime.getRuntime().exec("explorer   http://www.csdn.net");     }catch(IOException   ioExp)     {     System.err.println(ioExp.getMessage());     } 这个命令可以再java中调用,也可以再“运行”中执行。

2009-01-18 22:36:00 363

原创 控制double类型数据的精度

有时候经过计算得到double的变量值的小数点后位数很长,可是我们可能只关心小数点后面的两位,例如计算交易价格。处理方法如下:double   price =  0.1800000000002;   price = new java.math.BigDecimal(price).setScale(2,java.math.BigDecimal.ROUND_HALF_UP).doubleVal

2008-12-31 14:01:00 371

原创 iBatis处理Oracle数据库插入null数据的处理方法

默认配置,如果插入null值,iBatis会抛出异常,所以在xml配置文件中要这样写:对于非DATE,TIME或TIMESTAMP类型:#name:VARCHAR:NULL#对于DATE,TIME或TIMESTAMP类型:#nextDate:TIMESTAMP# 格式说明#字段名称:SQLTYPE:默认值#SQLTYPE可以取java.sql.Types中的类型

2008-11-29 16:46:00 1071

原创 用URL表示文件路径

如果要用URL表示文件路径,表示方式是:file:///D:/dir/file.ext以前一直不理解file:后面为什么是三个/,现在明白了,file://是固定格式,表示是文件协议,第三个/是表示文件系统的根目录,其实Windows文件系统也可以像Unix文件系统那样理解,/表示中的根,C盘和D盘是在根下的两个文件夹同样在Unix系统中用URL表示文件路径就是file:///usr/lo

2008-11-19 00:13:00 1103 1

原创 ResultSet的TYPE_FORWARD_ONLY,TYPE_SCROLL_INSENSITIVE,orTYPE_SCROLL_SENSITIVE解释

 ResultSet   的Type属性   TYPE_FORWARD_ONLY,   TYPE_SCROLL_INSENSITIVE,   or   TYPE_SCROLL_SENSITIVE解释: TYPE_FORWORD_ONLY,只可向前滚动;   TYPE_SCROLL_INSENSITIVE,双向滚动,但不及时更新,就是如果数据库里的数据修改过,并不在ResultSet

2008-09-16 12:00:00 866

原创 对Java构造函数的理解和构造函数是否有返回值

 CSDN论坛上很多人在讨论Java的构造函数是否有返回值这个问题,这里我说说我对构造函数的理解 String str = new String("123"); 这句话中有一个new指令,String类中有构造函数。 首先要确定类对象是由谁创建的,构造函数虽然叫构造函数,但是类对象不是它创建的,而是有new操作符创建的,new操作符有2个主要工作,首先根据String类的定

2008-09-05 11:47:00 1416

原创 WAS环境下绘图需要修改WAS的配置

如果AIX服务器是在命令行模式启动的的WAS服务器,在这样的Java环境中是不能执行绘图操作的,必须在WAS的启动命令中增加“-Djava.awt.headless=true”,才可以。具体步骤如下:登录WAS的管理控制台=》应用程序服务器=》server1=》进程定义=》Java虚拟机 找到一般JVM自变量,在输入框中的最后增加-Djava.awt.headless=true即可,注意-

2008-05-27 14:21:00 291

原创 Java绘图输出JPEG或PNG格式的图片

JPEG输出:public boolean writeJPEGEncodeToStream(float quality, OutputStream out) throws IOException {        BufferedImage bufferedImage = (BufferedImage)getImage();//获取图像缓冲区内容        Iterator writers

2008-04-29 09:57:00 1328

原创 java中是否能嵌入伪指令呢

都知道在C/C++语言中可以嵌入汇编代码,是否能在Java中也嵌入伪指令呢?例如如下代码//计算a和b运算结果,可能是相加,也可能是相减,由oper决定。//变量oper,可能是96(iadd,加操作),也可能是100(isub,减操作),当然也可以是乘或者除public int calculator(int a,int b,byte oper){     ${          iloa

2008-02-20 01:05:00 475 1

原创 Java系统中字符的处理以及显示

此为学习笔记,其中可能会有些想当然的内容,如果有问题,希望指正。 在使用Java开发的时候,经常会遇到乱码的问题,经过查阅Java API的源码和网上搜集信息,终于对Java系统如果处理字符有了一定的了解,特记录在此。Java系统中处理的字符数据都是Unicode编码的,包括class文件内的字符(字符串)数据也一样,这就是Java程序能处理任何国家的文字的原因。虽然Java处理的字符都是

2008-02-14 11:54:00 532

原创 Java程序中遇到的乱码问题以及解决方法

最近在编写Java程序的时候,偶尔会遇到中文字乱码的问题,或者偏僻字不能正常显示的问题,经过查找资料并通过几次测试,目前已经完全解决。  首先需要说明一下我们经常用到的字符集,有ISO8859-1,GB2312,GBK,GB18030,UNICODE。这里ISO8859-1字符集只包含英文字符,使用一个字节存储。GB2312、GBK和GB18030字符集包含中文字符,他们都兼容ISO8859-1字

2008-01-04 14:35:00 933

原创 一次修改Eclipse源码的经历

以前用贯了JBuilder,在JB中能设置JDK为5.0,源码版本也是5.0,目标虚拟机(class文件版本)为1.4,这样我就可以使用5.0的语法编写java源代码(包括使用泛型,自动解包封包,for each循环增强,枚举类型,变长参数,静态引入,(元数据没有测试) ),然后编译出1.4版本的class文件,在1.4的jvm上运行。可是后来使用Eclipse,却发现不能设置class文件版本低

2007-11-23 10:41:00 1008 1

原创 IBM WAS 使用记录,目前有一条

WAS默认在web应用的http会话中使用已经废弃的会话id作为新的会话id,有的时候我们不需要这样的id,所以需要修改WAS的参数,参考如下地址:http://www-1.ibm.com/support/docview.wss?rs=180&context=SSEQTP&context=SSCMGN&dc=DA490&dc=DA4A10&dc=DB520&dc=DB530&dc=DA4A30&d

2007-11-16 14:57:00 326

原创 DB2上写存储过程,并通过iBatis调用

已经存在树形菜单,每个菜单都有自己的ID,给一个菜单ID,返回从根菜单到给定菜单的菜单路径。存储过程如下:CREATE PROCEDURE SCOTT.CMODM_FUNPATH(IN FUNID INTEGER,                                     IN LINK VARCHAR(10),                                  

2007-11-08 13:46:00 784

原创 AIX shell

这几天在AIX上写了一个Shell脚本,做一下学习笔记。 A脚本调用B脚本,B脚本运行结束以后,A脚本可以使用B脚本中定义的变量的方法,在A脚本内调用B脚本的时候使用如下格式". b.sh",注意在b.sh前面有个点和空格,这两个字符不可以省略,这样B脚本就会作为B脚本的内容一起处理,不会以调用的方式执行B脚本。 在Shell脚本中,if语句测试语法,字符串比较直接用==

2007-11-06 10:48:00 1491

原创 XML中的CDATA格式

怕忘,记在这里。&]]> 

2007-09-19 14:08:00 1012

原创 我的Ajax库文件

//Ajax异步HTTP请求组件//用法:new Ajax(callBack[,"xml"]).method(url[,content]);//callBack为回调函数,需要包含一个参数,表示相应的返回信息//xml是可选的参数,只能使用"xml",不区分大小写,表示回调函数处理的http返回信息是dom对象,//如果不指定xml参数,则表示回调函数处理的http返回信息是文本对象//metho

2007-08-30 21:34:00 502

原创 java调用系统命令,启动进程

启动进程,并重定向输出流,新进程不以当前进程为父进程运行。windows: cmd /c start /B java SubProcess > D://Project//test//a.fileLinux/Unxi:String[] cmd = { "sh", "-c", "ls > FILE" }; String[] cmd = { "/bin/sh", "-c",

2007-08-30 21:27:00 1020

原创 Java的动态代理技术(学习笔记)

现在Java的好多应用都使用动态代理,包括Hibernate,Spring等等都使用动态代理技术.动态代理就是在没有.java文件的情况下生成符合格式的Java字节码,再定义成类对象来使用.动态代理有两种实现方式,一种是基于接口的实现方式,另一种当然是不基于几口的实现,下面就两种方式的实现方法简单说一说.基于接口是实现:这种实现方式主要利用Java的放射机制,通过指定的接口动态生成实现指定

2007-08-10 17:29:00 659

原创 Java几种引用类型的使用(学习笔记)

在Java.lang.ref包中有三种引用类型Soft,Weak,Phantom三种引用类型分别表示软引用,弱引用和虚引用,他们对引用目标的声明周期的影响不同。Soft引用会使引用对象存活比较长的时间,一般只有在JVM将要抛出OutOfMemoryError错误之前才回收Soft引用的引用目标对象,否则 不会回收。所以声明周期较长。主要用于在内存中简历缓存,当系统内存不够的时候,会把Soft应

2007-08-10 16:49:00 814

原创 Java的安全策略机制在SUN和IBM的JDK上使用方法不一样啊。

前几天写了个Java程序,当时是在SUN的JDK上开发的,通过java -Djava.security.manager -Djava.security.policy==java.policy启动安全机制,一切运行正常,可是当程序放到AIX服务器上,使用IBM的JDK运行这个程序却缺显示我的程序没有权限,说明-Djava.security.manager参数生效了,可是-Djava.security

2007-05-29 23:31:00 616

原创 Java程序运行时系统属性

java.runtime.name:Java(TM) 2 Runtime Environment, Standard Editionsun.boot.library.path:C:/Program Files/Java/jre1.5.0_08/binjava.vm.version:1.5.0_08-b03java.vm.vendor:Sun Microsystems Inc.java.vendor

2006-09-13 13:27:00 836

原创 利用系统自带软件生成汉字和拼音的对照表

在以下路径下C:/Program Files/Windows NT/Accessories有个Imegen.exe文件,这个文件可以把输入法的码表文件转换成普通的文本文件,选择逆转换标签,选择C:/WINDOWS/system32/WINPY.MB文件,然后转换就得到文本格式的汉字和拼音对照表。这里记录下来,供以后使用。 

2006-08-31 13:20:00 820

原创 让Java程序带着minijre一起上路--进一步精简jar文件的体积。

看此文章之前,请先看 《让Java程序带着jre一起上路》,然后再回来。根据上面的文章最后的jre的体积还是很大,大约几十M,下面让我们进一步精简jre的体积。jre里面体积最大的文件就是rt.jar文件,这个文件里包含了所有的javaAPI的class文件,有很多文件没有用,我们把rt.jar、jce.jar、jsse.jar和charsets.jar文件解包,放在一起。然后编写一个ja

2006-08-23 22:23:00 1514 1

原创 java代码直接访问Access数据库文件,不需要注册系统DSN。

String url = "jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=db/test.mdb";Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");Connection conn = DriverManager.getConnection(url);  db/test.mdb是数据库

2006-08-10 22:24:00 923

原创 普通字符串转UNICODE码序列(/uXXXX)

 public static String toUTF16CODE(String src) throws Exception{  byte[] ary = src.getBytes("UNICODE");  StringBuffer buf = new StringBuffer();  String cell = null;  for(int i = 2; i    if(i % 2 == 0){

2006-07-07 17:20:00 712

原创 ASCII码为0的字符的妙用

    其实就是没事闲的,写这么个东西。昨天遇到个网页木马,包含木马的网页源码很乱,几乎看不出来是什么内容,还好用的是EditPlus看的源码,EditPlus提示每个字符的ASCII码,发现空白的地方居然是0,空格的ASCII吗是20(16进制) ,今天编了个程序,将一个正常的网页里添加若干个这样的字符,达到的预期的效果,网页在浏览器中能正常显示,可是看源码却什么也看不明白,这个方法可以起到小小

2006-06-30 16:13:00 1269

转载 在Struts配置Action的时候使用通配符

解释通配符的最好方法是来看一个例子:path="/edit*"type="org.apache.struts.webapp.example.Edit{1}Action"name="{1}Form"scope="request"validate="false">name="failure"path="/mainMenu.jsp"/>name="success"path="/{1}.jsp"/>在pa

2006-04-26 14:52:00 815

原创 Struts的动态表单和Validator框架

所有的表单都是继承自ActionForm类,它有两个直接子类,一个是ValidatorForm类,一个是DynaActionForm类。ValidatorForm类还有一个子类是ValidatorActionForm类,这两个类都可以和Validator框架一起工作验证表单内部的数据,但是必须手动创建他们的子类,至于这两个类的区别,后面再说。DynaActionForm类就是可以动态配置表单的类了

2006-04-19 00:21:00 1662

原创 常用的js脚本

// 当页面出现错误时,显示错误信息function ShowError(sMsg,sUrl,sLine){ var str; str="错误信息:"+sMsg; str+="/n错误页面:"+sUrl; str+="/n错误行数:"+sLine; alert(str); return true;//此行确保浏览器不在显示脚本错误信息}window.onerror=ShowError;//判断

2006-04-18 20:00:00 566

原创 用JSTL的forEach标签迭代Map对象

以前都用forEach标签迭代List,Set对象,今天需要用它来迭代Map对象,就研究了一下。以下是试验代码:http://java.sun.com/jsp/jstl/core" %>无标题文档 public static class TTT{  private String name;  public TTT(String name){   this.name = name;  }  

2006-04-18 00:50:00 7237 2

原创 使用DOM技术动态修改HTML页面元素

动态修改表格元素需要注意,定义表格结构的时候需要在tr标签外部添加tbody标签,动态修改表格结构才能生效。复制以下代码,保存成html文件即可。无标题文档index = 0;batchAddNum = 1;function addLine(){ var tbody = document.getElementById("tb"); for(var i = 0; i   var tr = d

2006-04-16 22:30:00 1254

转载 MySQL出错一览

1005:创建表失败1006:创建数据库失败1007:数据库已存在,创建数据库失败1008:数据库不存在,删除数据库失败1009:不能删除数据库文件导致删除数据库失败1010:不能删除数据目录导致删除数据库失败1011:删除数据库文件失败1012:不能读取系统表中的记录1020:记录已被其他用户修改1021:硬盘剩余空间不足,请加大硬盘可用空间1022:关键字重复,更改记录失败1023:关闭时发生

2006-04-15 01:02:00 517

翻译 log4j日志格式参数说明

log4j日志格式参数说明:PatternLayout类构造函数参数说明c 日志名称例:日志命名为"a.b.c" 模式参数为 %c{2} 将会输出 "b.c". C 输出日志的类名,默认全限定类名,如过自定整数,输出右边自定个数的类名 执行缓慢,慎用!例:调用类的类名为"org.apache.xyz.SomeClass", 模式参数为 %C{1} 将会输出 "SomeClass".

2006-04-15 00:43:00 2837

转载 如何用Struts实现动态(不定数量)多个文件上传?

要求必须完全用struts实现。  单个文件上传,我会。  多个文件上传,我会。  动态(不定数量)文件上传,我不会。  从网上找了半天,都是说单个或者确定数量的文件上传。所以如果是这样的答案,就不用回复了,我也不会给分的,抱歉。  不会的,也不用回复,我自己会顶的,抱歉。   只要能给出正确答案的,无论贴代码也好,贴地址也好,都是欢迎的。    不说废话,楼主觉得下面的代码用得上就给分吧。   

2006-04-15 00:29:00 1620 5

log4j.ex.jar(包含源码)

多线程环境下使用log4j输出各线程的线程ID作为标识,区分各线程输出的内容 具体可以参考:http://blog.csdn.net/benq998/archive/2009/03/29/4033334.aspx

2009-03-29

我整理的Java虚拟机操作码

前段时间读了《深入Java虚拟机第二版》一书,整理了Java虚拟机的操作码,也许对学习Java VM或者研究class文件结构的朋友会有用。

2007-05-08

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除