重定向System.out和System.err到JTextPane,分别用黑色红色显示

把 System.out 和 System.err 重定向到 JTextArea 的做法在网上能找到不少,由于 JTextArea 不能用不同的字体分别显示内容。但我还是希望能象 Eclipse 控制台那样,标准输出为黑色,错误信息为红色,于是选择了 JTextPane 作为输出目的地。线程之间通信息用到了 PipedInputStream 、PipedOutputStream 和 SwingUtilities.invokeLater(new Runnable()。  

自定义了一个 JScrollPane,类名为 ConsolePane,写成的单例类;使用时只需要在你的面板上加上 ConsolePane组件,例如:getContentPane().add(ConsolePane.getInstance(), BorderLayout.CENTER);

界面截图(黑色和红色分别显示 System.out 和 System.err 定向的输出内容): 阅读全文 >>

Eclipse中执行Ant出现Could not find the main class的问题及解

这种情况通常是发生在换了另一份 Eclipse 拷贝之后。之前一般都能正常在 Eclipse 中执行 Ant 脚本,删除了原来的 Eclipse 之后换了另一个拷贝或者是新版本,在其中执行 Ant 脚本时弹出窗口出现以下错误:

---------------------------
Java Virtual Machine Launcher
---------------------------
Could not find the main class. Program will exit.
---------------------------
确定  
---------------------------

这种错误对用过 Java 的人来说还是很明白,找不到 Ant 的主类吗。不过说实话也困扰过我一段时间,也没去深究。说开了,症结就是 Eclipse 中的 ANT_HOME 指向不对。 阅读全文 >>

对StrutsConfigHelper工具的小小升级--增加代码着色显示功能

StrutsConfigHelper 小工具方便你对一个或多个 StrutsConfig 文件按条件查找各要素。在 《忙里找闲,自写了一个StrutsConfig配置文件条件查找工具》 一文章有对该工具的介绍。

软件为适宜之作,如果它确实对你毫无用处,你大可当它是垃圾,不因作者付出很大的苦劳,而勉强去接受;也许它还能给你带来些便利,那就体现了它的价值。 阅读全文 >>

Quartz Job Scheduling Framework[翻译]第三章. Hello Quartz (第一部分)

[译者注:后面的章由于每章的内容较多,每章聚于一篇之中,过于臃肿,屏幕不比书本,三屏之后的内容一般不为读者乐意去阅读,此为第一部分]

第三章:Hello Quartz

多数读者都较容易从一个简明扼要的例子中明白一个东西。作为写作者,要注意避免把一章的内容精简地几乎什么都没了;作为读者呢,需要有耐心并且要进一步相信其后相关的章节应该去阅读,尽管这个例子看起来是如此之简单。

有了这种初衷,这一章将为你介绍如何用 Quartz 框架创建一个简单的应用程序,它展示了一个典型的应用。这个例子将让你领略到创建和执行一个简单应用的必要步骤。通过本章的学习,为你学习本书的后续章节打下了坚实的基础。 

阅读全文 >>

忙里找闲,自写了一个StrutsConfig配置文件条件查找工具

工作中有维护 Struts 项目,或看别人项目中代码时,要把访问页面链接与相应处理 Action 类及 FormBean等相关信息对应起来,每每都是打开 Struts 配置文件,Ctrl+F 进行查找,不易准确定位,尤其是项目中有多个 Struts 配置文件时就得这边倒来那边转去的,实为不便。于是乎就为自己写了一个可同时在多个 Struts 配置文件中根据不同条件查找配置信息的小工具,谓之:Struts Config Helper。

这段时间工作上比较的忙,闲暇之间,一点一滴缓慢缀掇而成。也不知对于各位同路人是否有可借鉴之处,张贴出来,希望得到各位的指摘,多给我提些 Bug 出来,不胜感激! 阅读全文 >>

Quartz Job Scheduling Framework[翻译]第二章. Quartz 起步

第二章. Quartz 起步

本章对 Quartz 框架一个快速的入门介绍,同时也大略指导你从哪里下载,构建和安装这个框架

1. Quartz 框架的发展历程

和现今许多在用的开源项目一样,Quartz之初也只是为个人开发者提供了一个简单的实现方案。但是随着日益增多的关键人员的积极参与和慷慨的贡献,Quartz 已经成为了一个为众人所知,并且能帮助人们解决更大问题的框架。

Quartz 项目 是由 James House 创立的,它在1998年就有该框架最初的构思。包括作业队列的概念,使用线程池来处理作业,也许它最早的模型已不为现今的Quartz使用者所知了。 阅读全文 >>

命令行使用PuTTY的几个参数[转]

使用ssh的朋友应该会知道这个工具,小巧,不需要安装,功能也不弱,是一个理想的ssh工具。

在使用中,需要将PuTTY放到批处理文件中调用,自动登录上服务器,然后运行命令,退出。google,百度搜索了都没有相关的中文资料,于是直接看英文文档,使用到的几个参数做一个说明,抛砖引玉。欢迎补充转载,请注明出处。

命令行格式
putty [-pw password] [-m file] user@ip_addr

-pw password 使用ssh登录的用户的密码(明文,所以安全性请自己考虑)
-m file 要在服务器上运行的命令
user@ip_addr 使用ssh登录的用户名和服务器的ip地址 阅读全文 >>

一个顶好用的 JavaDoc Api 查看软件 JavaDOCHelper

一般我们查阅 JDK API 都是用的 CHM 版的帮助文件,记得想想刚接触 Java 那时要在网上找个 CHM 版的 JDK 帮助文档都要费几番周折,甚至还经常在线查某个 AP I说明。现在好了,连中文的 JDK API 帮助都能及时出来,要找个 CHM 版的帮助也方便多了。

可是对于大多数的 Java 组件都只提供 HTML 版的 JavaDoc API 帮助,查阅起来很不顺手。没有快速索引查找的功能,而且看不同组件的 API 帮助需要同时打开多个窗口。

下面向大家介绍一款软件,JavaDOCHelper,它不仅能提供像 CHM 文件那般快速索引查找,而且提供一个界面里查阅多个 Java Doc API。该软件未注册版本,只限 30 次的查找功能的使用(不是指索引),现已对该软件完成了破解,并提供更换安装目录时更方便的提示功能,以及免安装,EXE 文件无控制台方式启动。 阅读全文 >>

Java中类C/C++的sizeof()操作,知晓实例大小

在C/C++中有sizeof()操作,可轻易获知某个类型或实例占用内存大小,sizeof(int) 或者 sizeof(new TestClass)。可是Java中可没有这么直观的方法可用。

因本人看过不少人写代码总爱写成

List userList = new ArrayList();   //注:声明时即初始化一个空 ArrayList
userList = userDao.getAllUsers();  //注:方法getAllUsers()中会生成一个ArrayList的

上面就造成平白多了一个空的 ArrayList(),创建完后即刻就推向GC处置,我就在想这样一个空的 ArrayList 会占用多少内存,于是找来了 Optimizeit 观察后发现一个空的 ArrayList 要占去 24b 内存。那 Java 中有没有更便的捷的方法呢,于是在网上 google "java sizeof",引出不少话题。 阅读全文 >>