linux下 java swing 问题的解决

在linux做java开发的朋友都知道swing在linux下有些很令人头疼的问题。

第一个问题就是scim输入法和swing的冲突问题导致键盘失效,尤其是开了compiz之后。

对于这个问题网上有很多处理的方法,例如添加环境变量AWT_TOOLKIT=MToolkit,这个方法还是不能解决swing程序中键盘失效的问题。

国外论坛上找到一个很好的解决方法就是:

sudo cp ~/.scim/config /root/.scim/

之后我在netbeans里面从来没有发生过键盘失效的问题

第二个麻烦就是在Ubuntu使用Java来编写Swing应用程序时一个比较大的问题就是不能使用SystemLookAndFeel。
例如运行jconsole的时候会报如下错:

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at com.sun.java.swing.plaf.gtk.GTKLookAndFeel.initSystemColorDefaults(GTKLookAndFeel.java:1267)
at com.sun.java.swing.plaf.gtk.GTKLookAndFeel.loadStyles(GTKLookAndFeel.java:1509)
……

有的人给出不完美的解决方案,就是把语言环境改成英文:

export LANG=en

这样swing应用程序就可以正常运行了,但这样对于使用中文的用户来说就很不方便,界面变成了英文。
实际上出现这个问题是因为swing的默认laf采用systemlaf,而ubuntu里却没有定义这个laf

好的解决方法是在程序启动时传递JVM运行参数:

-Dswing.systemlaf=javax.swing.plaf.metal.MetalLookAndFeel

或者在/etc/environment 文件在最后增加上:

_JAVA_OPTIONS="-Dswing.systemlaf=javax.swing.plaf.metal.MetalLookAndFeel"

阅读全文 »

perl发邮件脚本

在外地出差也搞什么邮件签到,真无聊~
前一段看欧锦赛,时差还没调整过来,早上起不来zzzzz
不过上有政策,下有对策嘛
就在服务器上写了一个perl脚本,用Net::SMTP发邮件,用crontab来定时跑,一下就解决了,哈哈

阅读全文 »

Oracle 查询优化

最近在做数据国内某移动电话运营商的数据集市系统,处理的都是海量的数据,这让我不得不对SQL语句的优化开始有所重视。

之前看过一些关于优化查询的文章,但都是快速地浏览。现在亲身体验了一把,收获不少。网上已经有很多对优化查询的经验作了总结,我就转一篇关于Oracle的优化技巧吧。

阅读全文 »

全国哀悼日

国务院决定2008年5月19日至21日为全国哀悼日

深切悼念在四川汶川大地震中遇难的同胞们!

默哀中...

阅读全文 »

You can't take the sky from me

《Firefly》主题曲

Take my love.Take my land.
Take me where I cannot stand.
I don't care, I'm still free.
You can't take the sky from me.

Take me out to the black.
Tell 'em I ain't comin' back.
Burn the land And boil the sea.
You can't take the sky from me.

Have no place I can be since I found Serenity.
But you can't take the sky from me.

阅读全文 »

强大的图形思维工具——思维导图

第一次接触与思维导图(mind mapping)有关的东西是在福州 linux 用户组的第三次聚会上,那是我第一次参加与技术有关的聚会。在聚会中,一个朋友向大家推荐了 freemind 这个工具。当时他的描述大致为:一个很容易将你的想画出来的开源工具。回去后我也装了这个工具,但一直不知道怎么用它。因为那时我根本还不知道“思维导图”这个概念。

阅读全文 »

JSP实现文件下载应注意的几个问题

用JSP实现文件下载的方式主要有这两种:
1、RequestDispatcher的方式进行
2、采用文件流输出的方式下载

阅读全文 »

JSP连接远程FTP服务器,生成缩略图

需求是这样的:
图片文件放在远程FTP服务器上,图片是用作宣传的,很大。用户只能访问web服务器,用户需要在web上先预览图片的缩略图,然后点击链接下载该图片。

阅读全文 »