オンライン処理(Web)でもなく、バッチ処理でもない、
例えば、以下のシンプルなサンプルプログラムでは、
次のような出力結果が得られます。
init Thu Jul 07 01:05:44 JST 2005: Hello! Thu Jul 07 01:05:45 JST 2005: Hello! Thu Jul 07 01:05:46 JST 2005: Hello! Thu Jul 07 01:05:47 JST 2005: Hello! destroy
つまり、
package jdaemon;
import java.sql.SQLException;
import java.util.Date;
/**
* サンプル常駐クラス
*/
public class TestDaemon extends DaemonProcess
{
// 実装必須
public void exec()
{
System.out.println(new Date() + ": Hello!");
}
// 実装必須でない(デフォルトは何もしない)
public void init()
{
System.out.println("init");
}
// 実装必須でない(デフォルトは何もしない)
public void destroy()
{
System.out.println("destroy");
}
// 実装必須でない(デフォルトは何もしない)
public boolean isShutDown(Throwable t)
{
if(t instanceof SQLException)
{
return false;
}
else
{
return true;
}
}
}
常駐処理はいったん始まると、指定間隔に従って起動され続けます。
これを停止するため、このフレームワークでは別スレッドでソケットサーバを起動します。
このソケットサーバに接続/切断リクエストがきたところで、常駐処理も停止するという仕組みになっています。
そのため、開始時、終了時のいずれにおいても、ポート番号を指定する必要があります。
(ただし、停止対象はプログラム上localhostに限定しています。)
[Download]
Daemon.zip (9.85KB)
[Install方法]
アーカイブを展開するだけです。
[使い方]
・Windowsの場合
[開始]
run.batを実行してください。
[停止]
stop.batを実行してください。
[設定について]
全ての設定は引数で行います。
[開発環境]
<クライアント>
OS Microsoft WindowsXP HomeEdition
言語 JDK1.4
[配布条件等]
GPL2に従います。
このソフトウェアは、Free Softwareなので、
いかなる保証も行いません。
GPL http://www.gnu.org/copyleft/gpl.html
[開発者]
Copyright (C) 2005年 < Takahiro Shigemoto >