torutkのブログ

ソフトウェア・エンジニアのブログ

2006-09-01から1ヶ月間の記事一覧

mainメソッドでSwingを書かない訳

昔は、以下のようにmainメソッド内でSwingの初期化と表示を行っていました。 public static void main(final String[] args) { JFrame frame = new JFrame("MyApp"); : frame.setVisible(true); }ところが、これはスレッド安全性上いかんということです。 で…

bashの3.1.8を入れるとエラー続出

Cygwinを何気にアップデートした際、シェル起動時にエラーが発生するようになった。 : command not found bash: /cygdrive/h/home/torutk/.bashrc: line 20: syntax error: unexpected end of fileみたいな感じです。bashを3.1.6に戻すとエラーは発生しない…

JDK 6からjava.util.logger.Logger.globalが非推奨に

Java.netのフォーラムでの投稿で気づきました。java.util.loggerパッケージのLoggerクラスのstaticフィールドglobalが非推奨(Deprecated)となってしまいました。 http://forums.java.net/jive/thread.jspa?threadID=18530&tstart=0Logger.globalは、System.o…

日経IT ProのJava記事関連

日経関係の技術サイトのひとつIT ProにJava関連技術記事が掲載されています。無償ですがユーザ登録が(多分)必要です。 ここに、「Java技術最前線」と銘打った一連の記事があります。 http://itpro.nikkeibp.co.jp/article/COLUMN/20060915/248243/?ST=newt…

日本Sun Developer Connection(SDC)のJava記事関連

SDCの無料個人会員になっている人に限定公開なので、見ていない人も多いかもしれません。Sun Enterprise News Vol.31(2006/09)でJava関連ニュース・記事が見れます。 http://sdc.sun.co.jp/news/2006/09/index.html JDK 7の開発キーマンへのインタビュー記事…

Java読書会「Java Concurrency In Practice」

Java読書会BOFによる「Java Concurrency In Practiceを読む会」の第3回が本日実施されました。Java Concurrency in Practice作者: Brian Goetz,Tim Peierls,Joshua Bloch,Joseph Bowbeer,David Holmes,Doug Lea出版社/メーカー: Addison-Wesley Professional…

JavaでSNMPマネージャ機能を作るには

JMXにあるかと思いきや、どうもSNMPエージェントの振りをするラッパーが提供されているだけのようです。SNMPの有償製品ならいくつか出ていますが、勉強レベルで個人で買う気がしないので、フリーなものを探してみました。 SNMP4J http://www.snmp4j.org/ SNM…

Javaプログラム中からCPU使用率を取る

前世紀からの課題の一つ。JNIを使ってネイティブメソッドを作るのが当初の解決策でした。SNMPを使って取得するという案もあるかなぁと思って数年が経過していました。その後、JMXでSunのJava実行系では、プロセスのCPU使用率が取れるようになっています(jco…

JDK 6 (Mustang)のリリース予定が変更

http://blogs.sun.com/mr/entry/java_se_6_schedule_update 10月リリース予定のJDK 6(開発コード:Mustang)は、8月18日のb96をもってコードフリーズして品質試験にはいってリリースに向かう予定でしたが、致命的なバグがまだ残っており、9月1日のb98をもっ…

ACE+TAOビルドとOpenSSL

C++

ACE+TAOでは、VC++のプロジェクトとしてssleay32.libをリンクします。しかし、 http://www.slproweb.com/products/Win32OpenSSL.html で公開されているOpenSSLのWindows用バイナリでは、VC++のリンクオプションであるMD,MT,MDd,MTdに合わせたssleay32MD.lib,…

NetBeans 5.5のGUIレイアウトで生成したコードをJDK 6(Mustang)へ移行するには

NetBeans 5.0からは、とても使いやすいGUIレイアウトツールが付いています。これは、org.jdesktop.layoutパッケージのGroupLayoutクラスを使ってレイアウトを制御するコードを生成しています。このGroupLayoutは、JDK 6 (Mustang)から標準搭載されるようにな…

テストしやすいメソッド設計

メソッドの中で、System.currentTimeMillis()のような実行タイミングに依存する結果をもたらす処理が入っていると、テストケースが書きずらいものになります。 public static long getCurrentNtpTime() { long currentUnixTime = System.currentTimeMillis()…

NTPタイムスタンプフォーマット

昨日のRFC 4193の一意なID生成ロジックにてNTPタイムスタンプフォーマットを生成する必要があります。調べてみるとNTPタイムスタンプは1900年1月1日0時0分0秒を基点とする64bit固定小数点形式で、上位32bitが秒を示します(LSBが1/2^32)。2036年で桁溢れが…

整数データとバイト配列の変換

RFC 4193「一意なローカルIPv6アドレス」では、IPv4のプライベートアドレスのような使い方をするアドレスについて規定しています。家で数台のPCでIPv6の実験(勉強)するときは、この一意なローカルIPv6アドレスを使用するのがよいです。http://www5d.biglobe.…