2011年9月26日月曜日

velocityまとめ

「Velocity」
1.Velocityについて
Jakarta Velocity
オープンソースのテンプレートエンジン
公式ページ:http://velocity.apache.org/engine/releases/velocity-1.6.2/jar-dependencies.html

特徴
・短期間で学ぶことができ、使い方も非常に簡単、簡潔な構文
・パフォーマンス解析によればJSPを上回る
・Velocityの目的はJSPとほとんど同じ、HTMLを生成するために使うことができる


2.VTLの主な構文
▽コメント
-----------sample-----------
##一行のコメント
#* 複数行のコメント
改行してもコメント  *#
-----------sample-----------

▽変数の出力
変数の値の出力には4通りある
変数に値が入らなかったときの処理に違いがある

     記法    説明    値がないときの処理
1    $変数名    これが一番単純な記法といえます。    "$変数名"という文字列を表示
2    ${変数名}    この記法が正式記法ですが、しばしば1の記法が使われます。    "$変数名"という文字列を表示
3    $!変数名    Silent表記法と呼ばれます。    何も出力されない
4    $!{変数名}    これは2と3を組み合わせた記法です。    何も出力されない

変数名はアルファベットと数字、ハイフン(-)、アンダースコア(_)で構成。最初の文字は、必ずアルファベット。

▽プロパティの表示
JSPと同じ方法
-----------sample-----------
 $変数名.プロパティ名
 -----------sample-----------
 または
 -----------sample-----------
  ${変数名.プロパティ名}
-----------sample-----------

▽メソッドの実行結果の表示
メソッドを実行した結果を表示できる
-----------sample-----------
  $変数名.メソッド名(引数のリスト名)
 -----------sample-----------
 または
 -----------sample-----------
  ${変数名.メソッド名(引数のリスト名)}
-----------sample-----------

※getterはこんな書き方も出来る
-----------sample-----------
$goods.getGoodsName()      -->  $goods.GoodsName ○
$visitor.getName()         -->  $visitor.Name    ○
$book.setTitle("Velocity") -->  $book.Title      ×(引数を渡せないため)
-----------sample-----------

▽set命令
#setは右辺の値を左辺に代入する指示子
シングルクォーテーションと、ダブルクォーテーションで動きが異なる
-----------sample-----------
 #set( $value = "$value * 3")
 #set($name = "YojigenTaro")
 #set($a = "$name")
 #set($b = '$name')
 $a
 $b
 ---
 処理結果
YojigenTaro
$name
 -----------sample-----------

他、
#parse #include テンプレートの中にローカルファイルをインポートするための指示子
#stop テンプレートエンジンを停止させるための指示子。主にデバッグに利用
#macro Velocityでマクロを定義するための指示子

参考
http://www.techscore.com/tech/Java/ApacheJakarta/Velocity/2/



3.VelocityTools

4.Velocimacro

5.Eclipseで使う


参考ページ:
http://java.akjava.com/library/jakarta-velocity
StrutsとVelocityを統合するーhttp://www.ibm.com/developerworks/jp/java/library/j-sr1/index.html

0 件のコメント:

コメントを投稿