$B%F%s%W%l!<%HCf$NFCDj2U=j$r%W%m%0%i%^$,M?$($?(B
Map$B$K$7$?$,$C$FCV49$7$?7k2L$rF@$k$b$N$G$9!#(B
$B%F%s%W%l!<%H$O(BHTML$B%(%G%#%C%?Ey$G$b$[$\ITET9gL5$/JT=8$,9T$($k$N$G!"(B
$B;vL3$N$*$M!<$5$s$K$@$C$F#O#K$C$9!#(B($BCm(B1)
$B0J2<$N>pJs$rEO$9$3$H$G%U%)!<%^%C%F%#%s%0$r9T$$$^$9!#(B
| $B@8@.;~(B | $BJQ49$r9T$&%F%s%W%l!<%H%U%!%$%k$H%(%s%3!<%G%#%s%0(B |
| format$B;~(B | $BJQ49I=$H$J$k(BMap$B%$%s%9%?%s%9(B |
$B%F%s%W%l!<%H%U%!%$%k$K0J2<$N$h$&$K%3%^%s%I(B/$B%-!<$r5-=R$7$F$*$-$^$9!#(B
$B%-!<$KBP1~$9$k(Bsubstitute($BJQ498uJd(B)$B%*%V%8%'%/%H72$O(B
Map$B$H$7$F(BFormatter$B$KM?$($^$9!#(B
| $B%3%^%s%I(B(ignore case) | $B=q<0(B | $B0UL#(B |
|---|---|---|
|
substitute # |
@#substitute key@ $B$^$?$O(B@##key@ |
Map$B>e$N(Bkey$B$KBP1~$9$k(Bvalue$B$KCV49!#(B key$B$,(BMap$B>e$KB8:_$7$J$$>l9g$OL5;k$5$l$k!#(B |
| html | @#html key@ |
key$B$KBP1~$9$k(Bvalue$B$N=jDj$NJ8;z(B(<>"&$B$N(B4$BJ8;z(B)
$B$r |
| tanslate | @#translate key@ |
key$B$KBP1~$9$k(Bvalue$B$KG$0U$N(BTranslator$B$rE,MQ$7$F$+$i=PNO!#(B $BE,MQ$9$k(BTranslator$B$O(BTextFormatter$B%*%V%8%'%/%H$4$H$K@Z$jBX$(2DG=!#(B |
| exist$B!A(Belse$B!A(Bendexist |
@#exist key@$B!A(B $B!A(B[@##key@]$B!A(B @#else@ $B!A(B[@##key@]$B!A(B @#endexist@ |
key$B$,B8:_$9$l$P0O$^$l$?HO0O$,I>2A$5$l$k!#(B $BB8:_$7$J$1$l$PL5;k$5$l$k!#(B |
| while$B!A(Bendwhile | @#while key@$B!A(B@#endwhile@ |
$B0O$^$l$?HO0O$r(Bkey$B$KBP1~$9$kCM$N8D?t$@$17+$jJV$9!#(B $BCM$O(BMap$B$NG[Ns$^$?$O(BMap$B$N(BList$B$GL5$1$l$P$J$i$J$$!#(B |
| if$B!A(Belse$B!A(Bendif |
@#if key = value1@$B!A(B@#endif@ @#if key != value2@ $B!A(B[@##key@]$B!A(B @#else@ $B!A(B[@##key@]$B!A(B @#endif@ |
$B%-!<$NCM$K1~$8$FI>2A$5$l$kItJ,$rJQ99$9$k!#(B $BDL>o$O(Bexist$B$GBP1~2DG=!#(B |
| foreach$B!A(Bendforeach |
@#foreach key@$B!A(B [@##key@]$B!A(B @#endforeach@ |
$B0O$^$l$?HO0O$r(Bkey$B$KBP1~$9$kCM$N8D?t$@$17+$jJV$9!#(B $BCM$O(BObject$BG[Ns$^$?$O(BList$B$G$J$1$l$P$J$i$J$$!#(B $B0O$^$l$?HO0O$K0l |
@##key@
@## key @
@##
key
@
$B0J2<$bF1MM$G$9!#(B($BF|K\8l$b(BOK)@#if $B%-!<%o!<%I(B!=$BCM(B@ @#if$B%-!<%o!<%I(B!=$BCM(B@ @#if $B%-!<%o!<%I(B != $BCM(B @ @#if $B%-!<%o!<%I(B != $BCM(B @
$B!&!&!&(Bfoo@bar$B!&!&!&(B -> OK $B!&!&!&(B@#exist abc@@$B!&!&!&(B -> OK $B!&!&!&(Bfoo@@$B!&!&!&(B -> NG $B!&!&!&(B@#exist abc@@@$B!&!&!&(B -> NG $B!&!&!&(Bfoo@#bar$B!&!&!&(B -> NG $B!&!&!&(Bfoo@#exisy abc@$B!&!&!&(B -> NG $B!&!&!&(B@@#exist abc@$B!&!&!&(B -> NG$B%(%9%1!<%W$5$l$F$$$J$$(B"@"$B$ND>8e$K(B"#"$B!"(B"@"$B!"(B"\"$B$,8=$l$?>l9g!"(B TextFormatter$B$OJ8K!%(%i!<(B(WrappedParseException)$B$rH/@8$5$;$^$9!#(B
$B!&!&!&(Bfoo\@@$B!&!&!&(B $B!&!&!&(Bfoo\@#bar$B!&!&!&(B $B!&!&!&(B\@@#exist abc@$B!&!&!&(B $B!&!&!&(B@#exist abc@\@@$B!&!&!&(B$BIaDL$O$3$NLdBj$,H/@8$9$k$h$&$J(Btemplate$B$K$O$J$i$J$$$H$O;W$$$^$9$,!D!#(B
$BJQ49$N
$B0J9_$G$=$l$>$l$N%3%^%s%I;HMQJ}K!$r6qBNE*$JNc$G@bL@$7$^$9!#(B
$BM?$($k(BMap$B$N%$%s%9%?%s%9(B
$B7k2L(B
$BM?$($k(BMap$B$N%$%s%9%?%s%9(B
$B7k2L(B
"title"$B$H$$$&%-!<$KBP1~$9$kCM$,L5$$>l9g$O(B<h1>$B%?%0$b=PNO$5$l$J$$(B
$BM?$($k(BMap$B$N%$%s%9%?%s%9(B
Map$B$NG[Ns(B
$B7k2L(B
"row"$B$H$$$&%-!<$NCM$O7+$jJV$5$l$k8D?tJ,$N(BMap$B$N=89g$H$J$k!#(B
$BM?$($k(BMap$B$N%$%s%9%?%s%9(B
Map$B$NG[Ns(B
$B>e5-$N$=$l$>$l$N!V(BMap$BG[Ns!W$K$O!"%-!
$B7k2L(B
$BDL>o$O(B@#exist name@$B!A(B@#endexist@$B$G;vB-$j$k!#(B
$B%k!<%WCf$G$=$N9`L\$4$H$K%U%)!<%^%C%H$rJQ99$G$-$k$h$&$K(B
$B$7$?$$>l9g$KMQ$$$k!#(B
$BM?$($k(BMap$B$N%$%s%9%?%s%9(B
$B"((B:Map$B$NG[Ns(B
$B"((B2:Map$B$NG[Ns(B
$B7k2L(B($B6uGr9T$O8+$d$9$/$7$F$$$k$@$1$G$9(B)
Map$B$N%$%s%9%?%s%9(B
[row]$B$NCM$G$"$k(BMap$BG[Ns(B
[column]$B$K$O$=$l$>$l(B[head][body]$B$H$$$&%-!<$r;}$C$?(BMap$B$NG[Ns$,F~$k!#(B
$B7k2L(B
import com.sk_jp.text.*;
:
TextFormatter formatter;
formatter = new TextFormatter("file.template", "Shift_JIS");
Map args = new HashMap();
args.put("key1", "value1");
args.put("key2", "value2");
String result = formatter.format(args);
// or formatter.format(args, writer);
$BJQ49Nc(B
1.$BC1=c$JCV$-49$((B
<html>
<head>
<title>@#substitute filetitle@</title>
</head>
<body>
$B:#F|$NF|IU$O(B@##date@$B$G$9!#(B
</body>
</html>
filetitle
"$B:#F|$O(B"
contents
new Date()
<html>
<head>
<title>$B:#F|$O(B</title>
</head>
<body>
$B:#F|$NF|IU$O(BTue Mar 14 08:35:31 JST 2000$B$G$9!#(B
</body>
</html>
DateFormat.getDateTimeInstance(DateFormat.FULL,
DateFormat.FULL).format(new Date())
$B$N$h$&$KJ8;zNs2=$7$?$b$N$rEO$9$3$H$b$b$A$m$s=PMh$^$9!#(B
2.$B%(%s%H%j$NM-L5$K$h$k%F%s%W%l!<%H$NItJ,:o=|(B
<html>
@#exist stylesheeturl@
<meta http-equiv="Content-Style-Type" content="text/css" />
<link rel="stylesheet" href="@##stylesheeturl@" type="text/css" />
@#endexist@
<body>
@#exist title@<h1>@##title@</h1>@#endexist@
:
</body>
</html>
stylesheeturl
"/sample.css"
<html>
<meta http-equiv="Content-Style-Type" content="text/css" />
<link rel="stylesheet" href="/sample.css" type="text/css" />
<body>
:
</body>
</html>
3.$B7+$jJV$7(B
<html><body>
<table><tbody>
<tr><th>$B%X%C%@#1(B</th><th>$B%X%C%@#2(B</th></tr>
@#while row@
<tr><td>@##column1@</td><td>@##column2@</td></tr>
@#endwhile@
</tbody></table>
</body></html>
row
Map$B%$%s%9%?%s%9$NG[Ns$^$?$O(BMap$B$N=89g$r3JG<$7$?(BList$B%$%s%9%?%s%9(B
column1
$BNs(B1-1
column2
$BNs(B2-1
column1
$BNs(B1-2
column2
$BNs(B2-2
column1
$BNs(B1-3
column2
$BNs(B2-3
<html><body>
<table><tbody>
<tr><th>$B%X%C%@#1(B</th><th>$B%X%C%@#2(B</th></tr>
<tr><td>$BNs(B1-1</td><td>$BNs(B2-1</td></tr>
<tr><td>$BNs(B1-2</td><td>$BNs(B2-2</td></tr>
<tr><td>$BNs(B1-3</td><td>$BNs(B2-3</td></tr>
:
</tbody></table>
</body></html>
$B$b$A$m$s$=$N%^%C%W$K$O(B"column1""column2"$B$H$$$&%-!<$,B8:_$9$k!#(B
# $B$3$s$J$K(BMap$B%$%s%9%?%s%9$rB??t@8@.$7$F$?$i8zN(0-$9$.$+(B?
# $B$7$+$7!"%-!
4.$B7+$jJV$7$N%M%9%H(B
<html><body>
<h1>$B=87W7k2L(B</h1>
@#while category@
<table>
<thead><caption>@##categorytitle@</caption></thead>
<tbody>
@#while item@
<tr><td>$B9`L\L>(B</td><td>@##itemname@</td></tr>
@#endwhile@
</tbody></table>
@#endwhile@
</body></html>
category
Map$B%$%s%9%?%s%9$NG[Ns$^$?$O(BMap$B$N=89g$r3JG<$7$?(BList$B%$%s%9%?%s%9(B
categorytitile
$BI=(B1
item
Map$BG[Ns(B
categorytitile
$BI=(B2
item
Map$BG[Ns(B
categorytitile
$BI=(B3
item
Map$BG[Ns(B
<html><body>
<h1>$B=87W7k2L(B</h1>
<table>
<thead><caption>$BI=(B1</caption></thead>
<tbody>
<tr><td>$B9`L\L>(B</td><td>$B9`L\(B1</td></tr>
<tr><td>$B9`L\L>(B</td><td>$B9`L\(B2</td></tr>
:
</tbody></table>
<table>
<thead><caption>$BI=(B2</caption></thead>
<tbody>
<tr><td>$B9`L\L>(B</td><td>$B9`L\(B1</td></tr>
<tr><td>$B9`L\L>(B</td><td>$B9`L\(B2</td></tr>
:
</tbody></table>
<table>
<thead><caption>$BI=(B3</caption></thead>
<tbody>
<tr><td>$B9`L\L>(B</td><td>$B9`L\(B1</td></tr>
<tr><td>$B9`L\L>(B</td><td>$B9`L\(B2</td></tr>
:
</tbody></table>
</body></html>
5.$B>r7o$K$h$kA*Br(B
<html><body>
<h1>$B=87W7k2L(B</h1>
@#while category@
@#if type=table>@
<h2>@## title@$B$NA*Br?t(B</h2>
<table><tbody>
<!-- $B%3%a%s%H$K$7$F$$$k$N$O(BHTML$B%(%G%#%C%?$GJ8K!%(%i!<$rH/@8$5$;$J$$0Y(B -->
<!-- @#while item@ -->
<tr><td>$B9`L\L>(B</td><td>@## itemname@</td></tr>
<!-- @#endwhile@ -->
</tbody></table>
@#endif@
@#if type=link@
<h2><a href="/servlets/listing.jsp?id=@## id@">
@## title@$B$N0lMw(B
</a></h2>
@#endif@
@#endwhile@
</body></html>
category
Map$B%$%s%9%?%s%9$NG[Ns$^$?$O(BMap$B$N=89g$r3JG<$7$?(BList$B%$%s%9%?%s%9"((B
if
table
title
$B9`L\(B1
item
Map$BG[Ns"((B2
if
link
title
$B9`L\(B2
id
2
if
table
title
$B9`L\(B3
item
Map$BG[Ns(B
column1
$BA*Br9`L\(B1
column2
5
column1
$BA*Br9`L\(B2
column2
3
<html><body>
<h1>$B=87W7k2L(B</h1>
<h2>$B9`L\(B1$B$NA*Br?t(B</h2>
<table><tbody>
<tr><td>$BA*Br9`L\(B1</td><td>5</td></tr>
<tr><td>$BA*Br9`L\(B2</td><td>3</td></tr>
:
</tbody></table>
<h2><a href="/servlets/listing.jsp?id=2">$B9`L\(B2$B$N0lMw(B</a></h2>
<h2>$B9`L\#3$NA*Br?t(B</h2>
<table><tbody>
<tr><td>$BA*Br9`L\(B1</td><td>14</td></tr>
<tr><td>$BA*Br9`L\(B2</td><td>8</td></tr>
:
</tbody></table>
:
</body></html>
6.$BFs
<html><body>
<table><tbody>
<tr>@#while column@<th>@##head@</th>@#endwhile@</tr>
@#while row@<tr>@#while column@<td>@##body@</td>@#endwhile@</tr>@#endwhile@
</tbody></table>
</body></html>
column
Map$B%$%s%9%?%s%9$NG[Ns$^$?$O(BMap$B$N=89g$r3JG<$7$?(BList$B%$%s%9%?%s%9(B
row
Map$B%$%s%9%?%s%9$NG[Ns$^$?$O(BMap$B$N=89g$r3JG<$7$?(BList$B%$%s%9%?%s%9(B
column
Map$B%$%s%9%?%s%9$NG[Ns$^$?$O(BMap$B$N=89g$r3JG<$7$?(BList$B%$%s%9%?%s%9(B
$B$9$_$^$;$sNc$,0-$+$C$?!#(B
$B:#$O(Bforeach$B$,;H$($k$N$G$b$&$A$g$C$H4J7i$K$J$j$^$9!#(B
<html><body>
<table><tbody>
<tr><th>$B%X%C%@#1(B</th><th>$B%X%C%@#2(B</th><th>$B%X%C%@#3(B</th></tr>
<tr><td>$B%\%G%#(B1-1</td><td>$B%\%G%#(B2-1</td><td>$B%\%G%#(B3-1</td></tr>
<tr><td>$B%\%G%#(B1-2</td><td>$B%\%G%#(B2-2</td><td>$B%\%G%#(B3-2</td></tr>
<tr><td>$B%\%G%#(B1-3</td><td>$B%\%G%#(B2-3</td><td>$B%\%G%#(B3-3</td></tr>
:
</tbody></table>
</body></html>
JSP$B$b4pK\E*$K$O(BHTML$B%(%G%#%C%?$GJT=82DG=$G$9$,!"(B
JSP$B$O%W%i%C%H%U%)!<%`$N%G%U%)%k%H%(%s%3!<%G%#%s%0$K(B
$B0MB8$7$F$$$k$N$GG[I[$K8~$$$F$$$J$$$H$$$&LdBj$,(B
$B$"$j$^$9(B$B$"$j$^$7$?(B($B2a5n7A(B)$B!#(B
$B$3$N%i%$%V%i%j$O(BHTML$B$K8BDj$7$^$;$s$7$M!#(B
$B$^$?!"(BJSP$B$N>l9g%?%0$GI=8=$9$k$?$a!"(B
HTML$B%(%G%#%C%?$G$OL$CN$N%?%0$H$7$F07$o$l$F$7$^$$$^$9!#(B
$BC"$7!"(B<HEAD></HEAD>$BFb$K%-!<%o!<%I(B("@##nnnn@")$B$rG[CV$9$k$H!"(B
$B%[!<%`%Z!<%8%S%k%@!<$H$$$&%=%U%H$G$O%(%i!<$H$7$F07$o$l$F(B
$BJd@5$,$5$l$F$7$^$$$^$7$?!#(B(JSP$B$G$b$[$H$s$IF1$8LdBj$O$"$j$^$9$,(B)
$B%(%i!<<+F0Jd@55!G=$N$"$k(BHTML$B%(%G%#%C%?$N>l9g$O!"(B
$B>l9g$K$h$C$F$O$=$N5!G=$r(BOFF$B$K$7$?J}$,$h$$$H$*$b$o$l$^$9!#(B