warning: Creating default object from empty value in /var/www/drupal-5.23/modules/taxonomy/taxonomy.module on line 1418.

Java の参考書: JavaWorld

最近は Drupal のおかげで PHP にどっぷり浸かっている私ではあるが、自分自身の SE の道は Java と共に歩んできた。一番最初に Java でクライアントホテル予約システムのクライアント側のコードを書いたのは 1996年のことだから、今から 10年以上も前ということになる。
最近は Drupal のおかげで PHP にどっぷり浸かっている私ではあるが、自分自身の SE の道は Java と共に歩んできた。一番最初に Java でクライアントホテル予約システムのクライアント側のコードを書いたのは 1996年のことだから、今から 10年以上も前ということになる。
Posted on 2007-07-29 by yas |

Tomcat で、サーブレットのクラスファイル(.class)を URL にマップする方法

Tomcat を使っていて、サーブレットのクラス名 our_servlet.class に次の URL をマップしたい場合を考える。 https://localhost:8080/our_dir/ourservlet
Tomcat を使っていて、サーブレットのクラス名 our_servlet.class に次の URL をマップしたい場合を考える。 https://localhost:8080/our_dir/ourservlet

100% Pure Java のルール

ソースはここ。今なお生きる5つのルール。
  1. ネイティブメソッドを使用しないこと
  2. Java コア API 以外に外部への依存性がないこと
  3. Java インプリメンテーションのうちドキュメント化されていない部分を使用しないこと
  4. 「トンネル」メソッド (Runtime.exec、Runtime.load) を使用しないこと
  5. ハードウェア・プラットフォーム固有の定数を使用しないこと
ソースはここ。今なお生きる5つのルール。
  1. ネイティブメソッドを使用しないこと
  2. Java コア API 以外に外部への依存性がないこと
  3. Java インプリメンテーションのうちドキュメント化されていない部分を使用しないこと
  4. 「トンネル」メソッド (Runtime.exec、Runtime.load) を使用しないこと
  5. ハードウェア・プラットフォーム固有の定数を使用しないこと
Posted on 2006-10-08 by yas |

Java で、ランダムな文字列を生成する方法

SecureRandom クラスを使う。以下は、16 バイトのランダムなバイト列を作る例。
import java.security.*;

...

public final static String RANDOM_ALGORITHM = "SHA1PRNG";
public final static int    RANDOM_LENGTH    = 16;

...

public byte[] getRandom() {

    try {

        SecureRandom random = SecureRandom.getInstance(RANDOM_ALGORITHM);
        byte seed[]         = random.generateSeed(RANDOM_LENGTH);
        byte b[]            = new byte[RANDOM_LENGTH];

        random.setSeed(seed);
        random.nextBytes(b);

    }catch(Exception e) {
        e.printStackTrace();
    }

    return b;
}
SecureRandom クラスを使う。以下は、16 バイトのランダムなバイト列を作る例。
import java.security.*;

...

public final static String RANDOM_ALGORITHM = "SHA1PRNG";
public final static int    RANDOM_LENGTH    = 16;

...

public byte[] getRandom() {

    try {

        SecureRandom random = SecureRandom.getInstance(RANDOM_ALGORITHM);
        byte seed[]         = random.generateSeed(RANDOM_LENGTH);
        byte b[]            = new byte[RANDOM_LENGTH];

        random.setSeed(seed);
        random.nextBytes(b);

    }catch(Exception e) {
        e.printStackTrace();
    }

    return b;
}