Java/Velocity
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
// 下階層用テンプレート
#topicpath
----
//ここにコンテンツを記述します。
[[Jakarta Velocity>http://jakarta.apache.org/velocity/]] ...
***ダウンロード・インストール [#fc5b64fe]
インストールは [[Jakarta Velocity>http://jakarta.apache.o...
-[[velocity-1.4.tar.gz>http://ftp.kddilabs.jp/infosystems...
が直近版みたいです。
***使ってみる [#e099bc30]
やってみます。モデルはUser,Customerという[[Hibernate/マッ...
-Main.java
package nu.mine.kino.velocity;
import java.io.StringWriter;
import nu.mine.kino.entity.Customer;
import nu.mine.kino.entity.User;
import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.exception.ParseErrorException;
import org.apache.velocity.exception.ResourceNotFoundExc...
public class Main {
public static void main(String args[]) {
User user = new User();
user.setName("ユーザ1");
user.setAddress("東京都江東区");
Customer c = new Customer();
c.setName("顧客1");
c.setUser(user);
//モデルデータの作成完了
try {
Velocity.init();// 初期化
VelocityContext context = new VelocityContext();
context.put("user", user);// オブジェクトをセット...
context.put("customer", c);
StringWriter out = new StringWriter();
Template template = Velocity.getTemplate("main.vm"...
template.merge(context, out);
System.out.println(out.toString());
out.flush();
} catch (ResourceNotFoundException e) {
// TODO 自動生成された catch ブロック
e.printStackTrace();
} catch (ParseErrorException e) {
// TODO 自動生成された catch ブロック
e.printStackTrace();
} catch (Exception e) {
// TODO 自動生成された catch ブロック
e.printStackTrace();
}
}
}
-テンプレートファイル(main.vm)
お名前:${customer.name}
${customer.name} さまの担当者は${customer.user.name}です。
連絡先:${customer.user.address}
${customer.name}はjavaファイルのcustomerというキー値で渡...
customer.getName();
てことです。お察しの通り${customer.user.name}は
customer.getUser().getName();
ってことですね。オブジェクトをそのまま渡すことができて、...
-実行結果
お名前:顧客1
顧客1 さまの担当者はユーザ1です。
連絡先:東京都江東区
なんだかすごく簡単にテンプレート内の値を置換して出力する...
----
この記事は
#vote(おもしろかった[7],そうでもない[2])
-時間なし!きょうはここまで。。 -- [[きの]] &new{2006-12-...
#comment
#topicpath
SIZE(10){現在のアクセス:&counter;}
終了行:
// 下階層用テンプレート
#topicpath
----
//ここにコンテンツを記述します。
[[Jakarta Velocity>http://jakarta.apache.org/velocity/]] ...
***ダウンロード・インストール [#fc5b64fe]
インストールは [[Jakarta Velocity>http://jakarta.apache.o...
-[[velocity-1.4.tar.gz>http://ftp.kddilabs.jp/infosystems...
が直近版みたいです。
***使ってみる [#e099bc30]
やってみます。モデルはUser,Customerという[[Hibernate/マッ...
-Main.java
package nu.mine.kino.velocity;
import java.io.StringWriter;
import nu.mine.kino.entity.Customer;
import nu.mine.kino.entity.User;
import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.exception.ParseErrorException;
import org.apache.velocity.exception.ResourceNotFoundExc...
public class Main {
public static void main(String args[]) {
User user = new User();
user.setName("ユーザ1");
user.setAddress("東京都江東区");
Customer c = new Customer();
c.setName("顧客1");
c.setUser(user);
//モデルデータの作成完了
try {
Velocity.init();// 初期化
VelocityContext context = new VelocityContext();
context.put("user", user);// オブジェクトをセット...
context.put("customer", c);
StringWriter out = new StringWriter();
Template template = Velocity.getTemplate("main.vm"...
template.merge(context, out);
System.out.println(out.toString());
out.flush();
} catch (ResourceNotFoundException e) {
// TODO 自動生成された catch ブロック
e.printStackTrace();
} catch (ParseErrorException e) {
// TODO 自動生成された catch ブロック
e.printStackTrace();
} catch (Exception e) {
// TODO 自動生成された catch ブロック
e.printStackTrace();
}
}
}
-テンプレートファイル(main.vm)
お名前:${customer.name}
${customer.name} さまの担当者は${customer.user.name}です。
連絡先:${customer.user.address}
${customer.name}はjavaファイルのcustomerというキー値で渡...
customer.getName();
てことです。お察しの通り${customer.user.name}は
customer.getUser().getName();
ってことですね。オブジェクトをそのまま渡すことができて、...
-実行結果
お名前:顧客1
顧客1 さまの担当者はユーザ1です。
連絡先:東京都江東区
なんだかすごく簡単にテンプレート内の値を置換して出力する...
----
この記事は
#vote(おもしろかった[7],そうでもない[2])
-時間なし!きょうはここまで。。 -- [[きの]] &new{2006-12-...
#comment
#topicpath
SIZE(10){現在のアクセス:&counter;}
ページ名: