JAVA
文章平均质量分 67
sinboy
http://hi.csdn.net/sinboy
展开
-
如何把JDK API DOC 集成到ECLIPSE中
ECLIPSE是我非常喜欢一个JAVA集成开发环境,诸多好处我就不在这里一一赘述,可谓“仁者见仁,智者见智”。但是有一点让我觉得不爽的是,ECLIPSE没有把JDK API文档集成到帮住当中,在查询某一个类的具体使用方法或方法时很不方便,这一点它就没有JB做的好了。虽然我现在已经弃JB转到ECLIPSE的怀抱中了,但JB的一些优点还是值得一提的。 以前的时候,我记得从网上看到过有文原创 2005-01-06 16:28:00 · 3576 阅读 · 6 评论 -
关于在Java程序当中创建对象等基本操作的性能测试
在Java程序中,创建对象、打印输出到屏幕、启动线程到底需要发费多长时间?针对这个最基本的问题,做了如下测试: 测试硬件环境:联想扬天E3100,AMD Sempron 64位 2600+(约1.6Ghz),512M内存,80G硬盘测试软件环境:Eclipse3.2.2+JDK5.0,直接在Eclipse下运行测试代码: public class TestCre原创 2007-03-22 14:35:00 · 2891 阅读 · 1 评论 -
关于JAVA中线程同步的性能测试
测试用例:package com.gftech.dp.run.test;/** *//** * 对线程同步进行性能测试 * @author sinboy * @since 2007.3.23 * */public class SyncThreadTest ...{ static int count; static final int CIRCLE_COUNT=10000; static原创 2007-03-23 10:08:00 · 3845 阅读 · 8 评论 -
关于在Log4j中使用JDBCAppender时出现死循环的问题
APACHE的log4j是一个非常好用的日志记录管理工具,可以实现到屏幕、文件、远程数据库、自动发送邮件等,功能强大而又简单易用。 但是今天在使用经过扩展的JDBCAppender时却碰到一个莫名其妙的问题,描述如下:1.为了在日志向数据输出时每次都创建新的连接,在原来JDBCAppender的基础上进行扩展,使用自己写的数据库连接池,主要是重写getConnectioin()和clo原创 2007-03-28 15:21:00 · 3956 阅读 · 7 评论 -
单源点最短路径Dijkstra算法的JAVA实现
在城市智能交通中,经常会用到最短路径的问题,比如找最佳的行车路线等,Dijkstra算法做为最经典的求解方法,为我们指明了方向.不过真正想让我了解该算法的原因是在学习ICTCLAS的N-最短路径算法,虽然和我们常用的案例有一点区别,但基本相同,为了更好的理解N-最短路径算法,我又重新把大学时代的数据结构知识搬了出来。在网上找到一篇文章,非常详细生动(有FLASH动画演示)的描述了该算法的实现,原创 2007-04-06 14:17:00 · 9914 阅读 · 2 评论 -
在网络中使用IO流进行数据收发
在Java当中,所有对外设的操作都通过IO流来实现,不管是从磁盘中读取或写入文件,或者是从网络环境中接收或发送数据。IO流的基类有两个InputSstream和OutputStream,它们实现IO最基本的、无数据缓冲的、按节节流进行读写的操作功能。但是在实际的处理当中,为了数据读写的方便或提高读写的效率,往往会用到它们的子类,比如带缓冲区的类BufferedInputStream、Buff原创 2007-04-13 17:09:00 · 4059 阅读 · 1 评论 -
在Ubuntu Linux下面使用Eclipse进行Java编程的安装配置
安装JDK1.下载JDK1.5 Linux安装版本jdk-1_5_0_15-linux-i586.bin.点击下载 2.创建安装目录:sudo mkdir /usr/java3.切换到该目录下:sudo cd /usr/java4.Copy安装文件到该目录下:sudo cp $DOWNLOAD/jdk-1_5_0_15-linux-i586.bin .5.因为它是可执行文件,所以我们可以直接安装。原创 2008-05-28 17:05:00 · 7163 阅读 · 0 评论 -
在Netbeans中设置JVM参数
对ictclas4j进行了比较大的改动,我希望能把分词的速度大幅度的提高,因为按原来的速度几乎没法用。但是Eclipse的性能测试插件TPTP实在令我很失望,对于大数据的加载速度慢的让人无法忍受,而Netbeans的性能测试还不错,起码能在很短的时间内正常启动我的程序。因此,在Eclipse下改好程序后,就在Netbeans下面进行性能测试。遇到的问题是,加载词典库时,会报OutOfMemer原创 2008-05-30 17:48:00 · 7620 阅读 · 0 评论 -
Apache Mina使用手记(二)
Mina主要是作为服务器端底层框架来实现数据处理,它的实现很简单,如下例所示:package com.gftech.mytool.mina;import java.io.IOException;import java.net.InetSocketAddress;import java.nio.charset.Charset;import java.util.Date;im原创 2009-03-11 21:28:00 · 13796 阅读 · 4 评论 -
java.nio.Buffer分析
在研究Apache Mina源代码时,在IoFilter中使用IoBuffer做为数据缓冲对象,而IoBuffer的实现来自于java.nio.Buffer。Buffer中的flip()、clear()、reset()、mark()等概念让我有点糊涂,仔细看了jdk的文档说明,才对Buffer对象的概念了然于胸。 在Buffer类当中有以下四个重要的属性:mark:标记位,用于rese原创 2009-03-12 16:04:00 · 16548 阅读 · 0 评论 -
Apache Mina使用手记(四)
上一篇中,我们介绍了如何在mina中编写自己的日志过滤器,这一篇我们自己实现一个编解器。实际应用当,很多应用系统应用的都不是标准的web service或XML等,比如象中国移动/联通/电信的短信网关程序,都有自己不同的协议实现,并且都是基于TCP/IP的字节流。Mina自带的编解码器实现了TextLineEncoder和TextLineDecoder,可以进行按行的字符串处理,对于象短信网关原创 2009-03-13 20:46:00 · 25334 阅读 · 18 评论 -
Apache Mina使用手记(一)
1.Apache Mina是一个高性能的基础网络构架平台,构建在java NIO的基础上2.Mina使用了SLF4J做为日志记录器,全称Simple Logging Facade for Java,它是一个日志门面,只负责为客户端提供应用接口,实际的日志记录由Log4j/JUL等日志记录器实现。如下图所示: 3.Mina主要有IoConnector,IoAccepter,IoSes原创 2009-03-11 20:17:00 · 10968 阅读 · 5 评论 -
Apache Mina使用手记(三)
在上一篇中,通过一个简单的例子,得以管中窥豹,了解了Mina的基本编写方法。在MinaTimeServer演示程序中,我们添加了两个过滤器,一个是日志过滤器LoggingFilter,一个是文本编解码过滤器。前者实现日志信息的自动处理,后者实现对按行读写的文本数据的编码和解码。其中LoggingFilter默认的是slf4j,它是一个日志Facade,实际并不实现真正的日志处理功能,它在程序运原创 2009-03-13 20:10:00 · 18644 阅读 · 0 评论 -
Apache Mina使用手记(五)
对Apache Mina进行UML图的简单分析,对源代码的框架结构有一个整体的认识。原创 2009-03-17 22:01:00 · 8065 阅读 · 8 评论 -
使用Eclipse性能测试插件TPTP改进你的程序(一)
程序在实际应用当中,大数据量时对系统本身的影响是一个不得不面对的问题。最早在使用Jbuilder时,它有个相配套的工具叫Optimize Suite,可以在JBuilder中使用,也可独立使用,用它可以监测运行的并发线程数据、内存的使用情况等,也是不款非常不错的性能测试套件。可惜随着JBuilder的衰落它也渐渐消失在人们的视线中了。我记得还有一个独立的性能测试工具叫JProfiler,从名字原创 2007-03-21 17:43:00 · 15627 阅读 · 2 评论 -
重拾ICTCLAS,继续学习
从去年3月份开始,经过一段时间的认真研究学习ICTCLAS,把学习的心得发表在我的BLOG上,引起我很多爱好者的关注,也不断有朋友和我联系,希望共同探讨。自从去年七月份之后,一方面工作忙的原因,二方面自己也有很多的杂事,渐渐把此事抛诸了脑后,时间一长更是不想再深入,心浮气躁也深入不进去。常常想起此事会有诸多遗憾,ICTCLAS4J的程序大体上我已完成,可以进行分词测试了,但还有相当的BUG以及原创 2007-03-15 14:57:00 · 4746 阅读 · 4 评论 -
在JAVA中实现数据库存储过程的统一调用
在业务处理过程中,总是要不停的访问数据库,如果仅仅利用SQL语句来实现数据的读取或更新插入,有时候往往导致业务处理层和数据层的逻辑结构过于复杂,接口太多难于管理.幸运的是,数据库的存储过程为我们保持接口的简洁和逻辑的清晰提供了很好的实现方式.通过存储过程,可以把复杂的操作都封装起来,提供的接口来实现复杂的功能.但随着业务逻辑的进一步复杂,可能存储过程也很快膨胀起来,如果每调用一次存储过程都要重原创 2007-03-06 16:30:00 · 3471 阅读 · 0 评论 -
让Ant帮你武装到牙齿
做为一个以Java为主要开发语言的程序员,我觉得真的很幸福,有那么多好东东能够免费用。JDK是免费的,Eclipse是免费的,Ant是免费的,Tomcat、JUnit……,感谢主,有这么多可爱的人给我们这世界增添了这么多乐趣。刚毕业开始用Java开发程序时,遇到了了JBuilder,感觉用起来真是太爽了,就象从自行车时代突然步入了汽车时代。一年多前,遇到了Eclipse,我是那种喜新厌旧的人,JB原创 2005-11-20 23:25:00 · 1362 阅读 · 0 评论 -
java学习提纲
1.对象的概念2.程序的控制流程(if、while、for、switch)3.程序的作用范围(public ,protected ,private)4.继承5.多态6.接口和内隐类7.容器(Array,Set,Map,List)8.异常处理9.Java I/O10.分布式计算(网络编程、JDBC、Servlets、JSP、EJB)原创 2005-11-23 16:37:00 · 1246 阅读 · 0 评论 -
在Java中操作串口实现短信收发
采用串口操作进行短信收发,是比较常见的一种方式.比如,很多群发软件,用的就是这种方法.1.配置comm.jar.Comm.jar是Sub实现底层串口操作的API,调用了本地的DLL文件,因为Java本身不具备直接访问硬件设置的能力,都是通过调用本地方法来实现的.可以Java的官方网站下载.下载之后把其中Comm.jar包导入到工程的Classpath中,把另外两个非常重要的文件javax.原创 2005-12-09 18:44:00 · 10012 阅读 · 18 评论 -
Java位运算符
Java位运算符 >>右移运算符,有符号。右边超出截掉,左边补上符号位>>>右移运算符,无符号,左边补0比如:byte b=3;bbb>>1=(00000001)b>>2=(00000000)byte b2=-128;b2>>1=(11000000)b2>>>1=(01000000)原创 2005-12-09 12:02:00 · 1991 阅读 · 0 评论 -
Java包设计原则
包(package)1.同一类的放到一个包中2.实体类(Bean)放到一个包中3.动作类(Action)放到一个包中4.工具类(Util)放到一个包中5.测试类单独放到一个包中,比如:com.gftech.web.action的测试程序都要全部放到对应的测试包com.gftech.web.action.test中6.尽量保持不同包中类的相互调用关系为单向的。比如p1.A调用了p2.B,那么最好不要原创 2005-12-09 12:05:00 · 3033 阅读 · 1 评论 -
学习在Java中使用嵌入式数据库Derby
数据库做为数据持久化存储的重要手段怎么强度都不过分,但传统的数据库都比较庞大,需要安装配置等,对于一些比较轻量级的应用来说有点象杀鸡用牛刀一样.Derby做为一个开源的、纯Java数据库引起了越来越多的关注,它源自IBM的CloudScape,现在成了大名鼎鼎的Apache基金会的开源项目。Apache一项是开源项目的领导者,从他们手里出去的东西都很不错,在此感谢一下这些无私奉献的人们。Derby原创 2005-12-21 21:23:00 · 5883 阅读 · 2 评论 -
用Java实现PDU编码
PDU编码的方案网上很多,可以参考一下,我们只要按照协议格式去做就行了。要注意的一点是短消息内容需要进行Unicode编码转换。1.发英文 发英文时可以进行7bit编码或8bit编码.因为英文和数字等小于128的Ascii码,高位为0,所以,我们可以把最高位也利用起来,去掉最高位的0,然后,每个字节的位以次向前移动,这样一条短信就可以发最多160个字符。因为GSM协议规定短信最多是140个原创 2005-12-10 12:01:00 · 9265 阅读 · 18 评论 -
Ant实战
利用Ant可以进行Java程序的自动化构建,只用配置好build.xml文件,其它的一切都交给Ant处理吧。Ant可以实现的功能有:文件的处理,比如:创建、拷贝、修改、删除等,源文件的编译,自动生成Javadoc文档,自动生成Jar文件等。Ant里面,是由一个或多个任务组成, 他们之间的依赖关系决定着该任务的执行次序,在Ant里面,任务的依赖关系是单向的,比如A依赖B的话,B就不能再依原创 2006-03-28 18:16:00 · 2565 阅读 · 0 评论 -
用Log4j自动生成日志
Log4j是Apache基金会的一个项目,它能为Java开发着提供功能强大使用方便的各种日志处理.当然它的版本不限于Java,还有C/C++等主流语言.我觉得它就象一把非常实用的锋利小刀,让我们的写程序时更加如鱼得水. Log4j输出的信息分如下几类:ALL,DEBUG,INFO,ERROR,FATAL,级别从低到高,输出的内容是从多到少.从字面意思即可看出大原创 2006-03-24 20:41:00 · 8023 阅读 · 0 评论 -
实现一个简单的中文时间解析器
参考源代码如下:final static String[] ft1 = { "前年", "去年", "今年", "明年", "后年", "上个月", "上一月", "上月", "本月", "下月", "下个月", "今晚", "明早", "明晚", "前天", "昨天", "今天", "明天", "后天", "凌晨", "早上", "早晨", "上午", "中午", "下午", "傍晚原创 2006-04-11 17:48:00 · 3459 阅读 · 4 评论 -
在LOG4J中把日志写入远程数据库
LOG4J强大的功能让我爱不释手,为了不用跑到机房看日志,我打算把日志写入远程数据库,这样操作起来就方便了,同时又可以按时间、按关键词搜索,一举两得。LOG4J提花了一个JDBCAppender的远程数据库输出方案,使用也很简单,在配置文件里写好驱动名、URL及远程数据库的登陆账号、密码,再加一个布局&SQL语句全部搞定,真当是方便极了。在我本机上测试没有问题,但欢天喜地移植到服务器上问题就来原创 2006-12-05 19:12:00 · 5173 阅读 · 3 评论 -
即时日志记录:使用 Jabber 增强 log4j 的功能
Ruth Zamorano (ruth.zamorano@orange-soft.com),软件架构师,Orange SoftRafael Luque (rafael.luque@orange-soft.com), CTO,Orange Soft 2003年 9 月日志记录不仅是开发和测试周期中的一个重要元素——提供关键调试信息,而且对于系统已部署到生产环境之后调试错误也是很有用的——提供修复错误转载 2006-12-06 11:57:00 · 2783 阅读 · 0 评论 -
在Log4j中实现日志的Email自动发送
LOG4J为输出日志信息提供了非常丰富的功能,如输出到控制台、文件、HMTL文件、远程数据、JMS、EMAIL等,个人认为EMAIL自动发送功能,可以及时把FATAL级的信息第一时间通知负责人 ,尽早排除错误,维护程序的正常运行有很大的作用。但EMAIL有时也并不能及时到达负责人那里,如果能提花MSN的接口就好了,当然这是后话,不过我到是有这个想法,自己做个扩展Appender来实现。LO原创 2006-12-05 17:10:00 · 22247 阅读 · 0 评论 -
Drools安装配置学习笔记
Drools安装配置学习笔记1. 下载drools相关的最新组件必需(Drools运行环境,drools eclipse插件)http://download.jboss.org/drools/release/5.0.1.26597.FINAL/drools-5.0-bin.ziphttp://download.jboss.org/drools/release/5.0.1原创 2009-11-20 11:24:00 · 15875 阅读 · 8 评论