2011/09/13

[Java] swing:jtableのセルをチェックボックスに変更する方法

概要

NetBeansを使えばJTableのセルを簡単にチェックボックスに変更できます。

内容

セルの型をBooleanに変えれば、表示がチェックボックスに変わります。
Booleanにしたら、内部的にエディター、レンダラーがJCheckBoxに変わるのかな。

2011/09/11

[Java] Velocityのログを無効化する方法について

概要

Velocityを使用すると、「velocity.log」というのが勝手に作成されます。
それを作成しないようにする方法について説明します。

内容

以下のようにVelocityの初期処理前にログを設定しないようプロパティを設定すればよいです。
        Velocity.setProperty(VelocityEngine.RUNTIME_LOG_LOGSYSTEM_CLASS, "org.apache.velocity.runtime.log.NullLogSystem");
        Velocity.init();

[Java] javaからgroovyスクリプトを実行する方法

概要

Javaプログラムからgroovyスクリプトを実行する方法について説明します。

内容

groovyスクリプトを実行するためには、以下のライブラリをビルドパスに追加します。
・groovy-1.8.2.jar
・commons-cli-1.2.jar
・antlr-2.7.7.jar
・asm-3.2.jar

そして、以下のようにプログラムを作成すれば、groovyスクリプトを実行できます。
        // GroovyScriptエンジンを生成する
        GroovyScriptEngine engine = new GroovyScriptEngine(".");

        // スクリプトにパラメータをBindする
        Binding binding = new Binding();
        binding.setProperty("formula", dto);

        // スクリプトを実行する
        engine.run("test.groovy", binding);

上記の例では、カレントディレクトリにある「test.groovy」を実行しています。

[Java] Velocityを使用してファイルを作成する方法

概要

Velocityというテンプレートエンジンを使用して、ファイルを作成する方法について説明します。

内容

以下の手順でテンプレートエンジンからファイルを作成することができます。
1.テンプレートエンジンを初期化する
2.テンプレートに渡すパラメータを設定する
3.テンプレートのマージ結果をStringWriterに設定する

以下サンプルコードです。
private File createGroovyScript(FormulaDTO dto) throws Exception {

        File file = File.createTempFile("priceCalc", ".groovy", new File("."));

        // Velocityテンプレートエンジンを初期化する
        Velocity.init();

        // テンプレートに渡すパラメータを設定する
        VelocityContext context = new VelocityContext();
        context.put("formula", dto);

        // テンプレートのマージ結果をStringWriterに設定する
        StringWriter sw = new StringWriter();
        Template template = Velocity.getTemplate("/template/template_groovy.vm", "UTF-8");
        template.merge(context,sw);

        // 結果を一時ファイルに設定する
        FileWriter writer = new FileWriter(file);
        writer.write(sw.toString());
        writer.close();

        return file;
    }

template_groovy.vm
import jp.co.technos.common.dto.FormulaDTO;

def calculate(FormulaDTO data) {
    data.setResult(${formula.formula})
}

FormulaDTO data = (FormulaDTO) formula
calculate(data)

2011/08/24

[Java] クラスファイル以外のリソースをjarに含める方法について

概要

今更ながらApache Antを使用してjarにリソースファイルを含める方法について調査したので、以下に記載する。

動作環境

項目内容
OSMac OS X 10.06
DBant 1.8.2

内容

こんな感じで build.xmlを作成したら動いた。

    
    
        
        
    

    
    
        
        
    

    
    
        
        
        
        
            
                   
            
            
        
        
        
            
                
            
        
    

    
    
        
            
        
    


上記、リソースコピーのように、特定の拡張子のファイルをがっつりコピーするのが楽。
リソース指定で一つずつ選ぶこともできるけど、めんどくさそうだった。

2011/08/23

[Ubuntu] apacheのバージョン確認方法について

概要

ubuntuにインストールされているapacheのバージョン確認方法について調べたので、こちらにメモします。

動作環境

項目内容
OSUbuntu10.04

前提事項

apacheがインストールされていること。

内容

以下のコマンドを実行すると確認できます。
apache2ctl -v

2011/05/18

[Windows Server] Windows Server 自動再起動の方法について

概要

Windows Serverを自動的に再起動する方法について、以下に記載します。

動作環境

項目内容
OSWindows Server2008


内容

以下のような設定を行えば、可能なようです。

--
(1) [スタート]-[管理ツール]-[タスク スケジューラ]を起動
(2) 「基本タスクの作成]をクリック
(3) 「名前」と「説明」を入力し[次へ]をクリック
(4) 「毎日」を選択して[次へ]をクリック
(5) 時間を再起動したい時間に変更して[次へ]をクリック
(6) 「プログラムの開始」を選択して[次へ]をクリック
(7) 「プログラム/スクリプト」に「shutdown」と入力、「引数の追加」に「/r /t 0」と入力して[次へ]をクリック
(8) [完了]をクリック