ボクココ

個人開発に関するテックブログ

Velocityの使い始め

Javaの簡易フレームワークを作っていて、コードジェネレータの機能が欲しいと思い、
調べてみると「Velocity」というものが出てきたので、それを使うことにする。
よくあるのは、HTMLの出力をVelocityを使って出す、ってのがあるみたいだけど、それをJavaコードにするイメージ。

インストール

velocity-1.4.jar
log4j-1.2.17,jar
commons-collections.jar
Javaアプリケーションプロジェクトのビルドパスに追加

テンプレート作成

template1.vlc


Hello, ${name}!

テンプレートをマージするJavaコード
HelloVelocity.java


import java.io.StringWriter;
import java.io.Writer;

import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;


public class HelloVelocity {
public static void main(String[] args) throws Exception {

Velocity.init();
VelocityContext vContext = new VelocityContext();
vContext.put("name", "Velocity");

Template template = Velocity.getTemplate(
"./res/template1.vlc", "UTF-8");

Writer _writer = new StringWriter();
template.merge(vContext, _writer);

System.out.println(_writer.toString());

_writer.close();
return;
}
}

実行


Hello, Velocity!




これで何でもできる気がしてきた。