随笔分类 -  Java

对付MINA中slf4j的办法
摘要:mina还是一个不错的网络库,但是一直使用slf4j作为logging组件,而不是apache的common logging、log4j或者JDK自带的log。比较有意思的是,mina的发行包中没有带slf4j的库,让人下载之后一时用不起来。也如刘小枫讲尼采时候所说,人类写东西,肯定是让人懂的,也肯定是让人不懂的。我要肯定的是,这种做法挺好,让使用者有一个冒险乐园!我的解决办法是:download... 阅读全文

posted @ 2006-08-22 03:34 温少 阅读(2893) 评论(7) 推荐(0) 编辑

讨厌SVN
摘要:官方提供的Eclipse插件,很多BUG,重构代码的时候老是出错,特别令人讨厌。代码库交给这样的一个咚咚保管,感觉十分不放心。感觉上是SVN提供了一大堆新功能,但是基本功能都还没做好。华丽花哨而不实在!所以,建议是,新选择代码版本管理工具时,还是不要选择SVN。 阅读全文

posted @ 2006-07-18 19:32 温少 阅读(1156) 评论(6) 推荐(0) 编辑

为Berkeley DB写一个SQL前端
摘要:之前就想为Berkeley DB写一个SQL前端+JDBC Driver。真的动手去做了,发现并不是很困难。不用花两天就可以写一个支持最简单SELECT、INSERT、CREATE TABLE语句的前端了。还包括一个可以运行的JDBC Driver。虽然要完善还需要做大量的工作,但是可以肯定的是,并不是一件困难的事情。突然有点轻视MySQL,MySQL也是基于别人的引擎,不过也是如此吧了。也许是我... 阅读全文

posted @ 2006-04-14 23:17 温少 阅读(2024) 评论(6) 推荐(0) 编辑

并发程序设计需要掌握的知识点
摘要:有朋友问过我,怎样学习多线程编程,我总结了一下,列了一下知识点:1、synchronized2、Runnable、Thread、Thread.sleep、Thread.yield、Thread.join3、wait、notify、notifyAll(注意其中锁的获得和释放)4、Mutex、Semaphore5、BlockingQueue (十分有用,必须掌握)6、ThreadPool7、Execu... 阅读全文

posted @ 2006-01-09 04:10 温少 阅读(2110) 评论(2) 推荐(0) 编辑

关于一些O-R Mapping的实现
摘要:关于一些O-R Mapping的实现 最近连续试用了两个O-R Mapping,一个是Hibernate 3,一个是国内的JDO实现Liberator。 Hibernate 3在两层一对多关系时,似乎会性能很差,例如: Voucher| 1|| 0..*VoucherEntry| 1| | 0..*Assist 在ERP系统,可能会有接近10的单据时多层一对多关系的,Hibernate在这方面似乎... 阅读全文

posted @ 2005-05-28 02:56 温少 阅读(1751) 评论(0) 推荐(0) 编辑

使用bcel动态创建class
摘要:Apache的BCEL库,文档很少,例子也很简单。动态构建类的工作,要求的只是并不是熟练使用BCEL类库本身,而是要对java的class结构了解。我对java的pcode也不熟悉,但是我曾经做过大量的.NET的反编译工作,两者类似,所以我用BCEL也不觉得困难。我提供一个例子,这里例子是使用BCEL创建类的实例,而不是使用反射。如下:IFactory.java public interface... 阅读全文

posted @ 2005-04-14 23:59 温少 阅读(3118) 评论(2) 推荐(0) 编辑

最安全的加密算法
摘要:在密码学里,有一种理想的加密方案,叫做一次一密乱码本(one-time pad)。one-time pad的算法有以下要求:1、密钥必须随机产生2、密钥不能重复使用3、密钥和密文的长度是一样的。one-time pad是最安全的加密算法,双方一旦安全交换了密钥,之后交换信息的过程就是绝对安全的啦。这种算法一直在一些要求高度机密的场合使用,据说美国和前苏联之间的热线电话、前苏联的间谍都是使用One-... 阅读全文

posted @ 2005-03-27 11:28 温少 阅读(12602) 评论(14) 推荐(0) 编辑

写了一个Rijndael工具类
摘要:由于DES不再安全,现在都流行使用AES加密算法替代DES,Rijndael是AES的实现。我从网上找到了很多Rijndael的java实现代码,我用了其中的一个,并且写了一个工具类,使得更方便使用它。 http://www.cnblogs.com/Files/jobs/Rijndael.rarRijndael_Util.java是我写的,使用方法如下: import mit.Rijndae... 阅读全文

posted @ 2005-03-20 13:16 温少 阅读(11615) 评论(15) 推荐(0) 编辑

关于JDK中的java.util.concurrent.atomic
摘要:我在阅读JDK 1.5中java.util.concurrent的源码时,对atomic下的一大堆atomic对象感到迷惑,google一把,得到一些有用的信息,与大家分享:http://www-900.ibm.com/developerWorks/cn/java/j-jtp11234/index.shtml 阅读全文

posted @ 2005-03-08 03:17 温少 阅读(5098) 评论(1) 推荐(0) 编辑

关于Hibernate 3
摘要:Hibernate 3作了一些改进,改进了一些原来很显而易见的缺点。例如加了抽象语法树,但是在Hibernate 3.0 Beta1中,感觉还是有些不大成熟。从代码可以看出,Hibernate 3.0 Beta1的HQL AST使用了antlr,我向来不大喜欢这种使用yacc、antlr等生成的文法分析和AST。 ast部分的代码是josh提供的,看来gavin并不熟悉文法分析等编译技术,ast是... 阅读全文

posted @ 2004-12-23 01:49 温少 阅读(2023) 评论(2) 推荐(0) 编辑

粗略看Hibernate的代码
摘要:Hibernate大名鼎鼎,我在观看奥运的期间,也抽一些时间来阅读Hibernate的源码。我并没有把Hibernate跑起来,而是直接阅读其文档和源码。以下是我的一些观点:1、Hibernate普遍地使用了Cache,Cache这个咚咚,对于O-R Mapping来说,双刃剑。在例如论坛之类系统中,Cache的能够很显著提高性能。在ERP之类系统中,业务对象很多,数据量很大,广泛使用Cache机... 阅读全文

posted @ 2004-08-19 02:52 温少 阅读(6585) 评论(14) 推荐(0) 编辑

关于JDK 1.5
摘要:前段时间,KINGDEE作为一个通过J2EE兼容性测试的J2EE应用服务器提供商,参加JavaOne大会。项目结束,有空余时间了,今天看了一些Java One会展的资料,其上介绍JDK 1.5发布Release版本的时间是9月30日。现在JDK 1.5已经是Beta 2,我已经使用,稳定性和向下兼容性都很不错。如果JDK 1.5正式版本按时交货,那么Java支持泛型就走在C#前面了。我粗略看了一遍... 阅读全文

posted @ 2004-08-06 01:04 温少 阅读(6049) 评论(23) 推荐(0) 编辑

开发源码的数据库群集中间件 C-JDBC
摘要:http://c-jdbc.objectweb.org/一个开发源码的数据库群集中间件,从http://www.theserverside.com/上看到的。第一个感觉以为是一个用C语言编写的JDBC Driver,细看之后发现不是。如我们做多数据库支持的思路一样,开发一个JDBC Driver,Driver内部调用原生的JDBC Driver。这都得益于JDBC本身接口设计很好,愈发欣赏JDBC... 阅读全文

posted @ 2004-08-06 00:28 温少 阅读(2353) 评论(6) 推荐(0) 编辑

有感于Elipse
摘要:使用Elipse一些日子了,Eclipse真的很不错,功能要比JBuilder强,而且他是一个开放源码的IDE。他是基于SWT技术,速度更是基于Swing技术的JBuilder无法相比的。Eclipse某些功能还比Visual Studio .net 2003要好,更人性化,例如代码重构的功能、产生Getter和Setter等功能。 由于Eclipe开放源码,功能强大,开发plug-in也非常方... 阅读全文

posted @ 2004-07-30 08:49 温少 阅读(7277) 评论(21) 推荐(0) 编辑

再谈ADO .NET vs JDBC
摘要:曾经在.NET下有过大约三年的开发经历,可以说非常熟悉ADO .NET。ADO .NET最大的特性是对断开连接方式的全方位支持,其引入了DataSet、DataTable、DataRow等等对象,构建了一个“内存数据库”简化版本,DataAdapter把DataReader的数据填充到DataTable或者DataSet中,给使用者一个直观的使用方式。ADO .NET还能够和ASP .NET和Wi... 阅读全文

posted @ 2004-07-28 04:07 温少 阅读(8623) 评论(19) 推荐(1) 编辑

在Java、C#和C++中遍历集合
摘要:在Java中,常见的遍历集合方式如下: Iterator iter = list.iterator();while (iter.hasNext()) { Object item = iter.next();} 也可以使用for for (Iterator iter = list.iterator(); iter.hasNext()) { Object item = iter.next();... 阅读全文

posted @ 2004-07-23 23:53 温少 阅读(3251) 评论(3) 推荐(0) 编辑

BPEL4WS的开源Java实现
摘要:ActiveBPELhttp://www.activebpel.org/info/intro.htmlBPEL4WS的开源实现,协议是GPL。关注external workflow的朋友可以留意一下。Java的开源项目真多,还是那样的感觉,拥抱Java,拥抱开放! 阅读全文

posted @ 2004-07-23 19:37 温少 阅读(1783) 评论(1) 推荐(0) 编辑

关于使用for循环
摘要:有人喜欢使用for作类似while的循环: for(;;) { } 评论:这是一种风格,有一部分人使用,我个人觉得不如while来得直观。 究竟是++i,还是i++ for (int i = 0; i = 0; --i) { if (condition) { list.RemoveAt(i); }} 如果list的实现是ArrayList,反序遍历可能比正序删... 阅读全文

posted @ 2004-07-23 01:27 温少 阅读(2765) 评论(10) 推荐(0) 编辑

代码风格-关于if语句
摘要:if语句的代码风格,分两大类:第一类1、关键字if后面有空格2、二元表达式左右有空格3、每个大括号,单独占一行4、else关键字单独占一行 if (a > b){ // }else{ // } 评述,我推荐在C#中使用这种写法。我觉得这种写法比较优雅,容易阅读。 第二类 1、关键字if后面有空格2、二元表达式左右有空格3、大括号放在上一句的右边 if (a > b) { //... 阅读全文

posted @ 2004-07-22 00:50 温少 阅读(1962) 评论(7) 推荐(0) 编辑

JDK Error的UML类图
摘要:其实也没什么用,因为Eclipse的“Open Type Hierachy”功能足够强大,但是既然画了出来,就上传上来啦。如下: 阅读全文

posted @ 2004-07-20 22:02 温少 阅读(962) 评论(0) 推荐(0) 编辑

导航