-Hello Maya
MayaでHelloWorldプログラミングを行ってみましょう。まず、WEBページのビューデザインであるHTMLテンプレートを作成します。
[list.2 /maya-page/hello.html] <html> <body> <span id=”message”>さようなら</span> </body> </html>
[list2]のHTMLファイルは、そのままWEBブラウザで見ることができるごく普通のHTMLです。このファイルをさきほどweb.xmlでMayaServletをディスパッチした/maya-pageフォルダに配置します。
[list.3 /maya-page/hello.maya] <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE maya PUBLIC "-//MAYA0.1//DTD maya//EN" "http://www.seasar.org/dtd/maya01.dtd"> <maya> <encoding template="UTF-8" page="Windows-31J"/> <model name="model" class="sample.org.seasar.maya.hello.HelloModel scope="application""/> <taglib prefix="c" url="http://java.sun.com/jstl/core"/> <tag id="message" inject="c:out"> <binding name="value" value="#{ model.greeting }"/> </tag> </maya>
[list.3]はビューデザインとビューモデルをバインディングする設定XMLです。HTMLテンプレートと同じフォルダに配置します。
[list:4 sample.org.seasar.maya.hello.PageModel] package sample.org.seasar.maya.hellomaya; import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar; public class HelloModel { public String getGreeting() { Calendar cal = new GregorianCalendar(); cal.setTime(new Date()); int hour = cal.get(Calendar.HOUR_OF_DAY); String greeting = "おやすみなさい"; if(6 <= hour && hour < 12) { greeting = "おはようございます"; } else if(12 <= hour && hour < 18) { greeting = "こんにちは"; } else if(18 <= hour && hour < 24) { greeting = "こんばんは"; } return greeting; } }
[list.4]はビューモデルオブジェクトです。ごくありふれたJavaオブジェクト(Plain Old Java Object = POJO)です。ここまで用意して、WEBブラウザより、http://localhost:8080/hellomaya/maya-page/hello.htmlにアクセスすると、昼間(12時〜18時)であれば、
こんにちは
と表示されます。この表示文字列は、HelloModelのgetGreeting()メソッドの実行結果です。