Java/Velocity/If
Версия от 18:01, 31 мая 2010; (обсуждение)
If and elseif
import java.io.StringWriter;
import java.io.Writer;
import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.tools.generic.RenderTool;
public class VMDemo {
public static void main(String[] args) throws Exception {
Velocity.init();
Template t = Velocity.getTemplate("./src/VMDemo.vm");
VelocityContext ctx = new VelocityContext();
Writer writer = new StringWriter();
t.merge(ctx, writer);
System.out.println(writer);
}
}
-------------------------------------------------------------------------------------
#set ($companyName = "Name")
<html>
<head>
<title>$companyName Homepage</title>
</head>
<body>
<h1>Welcome!!</h1>
#if ($userType == "Type 1")
<h2>You are Type 1!</h2>
#elseif ($userType == "Type 2")
<h2>You are an Type 2. </h2>
#elseif ($userType == "Type 3")
<h2>You are an Type 3!</h2>
#else
<h2>I don"t know what you are!</h2>
#end
</body>
</html>
If Else and End
import java.io.StringWriter;
import java.io.Writer;
import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.tools.generic.RenderTool;
public class VMDemo {
public static void main(String[] args) throws Exception {
Velocity.init();
Template t = Velocity.getTemplate("./src/VMDemo.vm");
VelocityContext ctx = new VelocityContext();
Writer writer = new StringWriter();
t.merge(ctx, writer);
System.out.println(writer);
}
}
-------------------------------------------------------------------------------------
#set ($companyName = "Name")
<html>
<head>
<title>$companyName Homepage</title>
</head>
<body>
<h1>Welcome!!</h1>
#if ($userType == "VIP")
<h2>You are a VIP!</h2>
#else
<h2>You are not a VIP!</h2>
#end
</body>
</html>
If statement inside a for loop
-------------------------------------------------------------------------------------
import java.io.StringWriter;
import java.io.Writer;
import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.tools.generic.RenderTool;
public class VMDemo {
public static void main(String[] args) throws Exception {
Velocity.init();
Template t = Velocity.getTemplate("./src/VMDemo.vm");
VelocityContext ctx = new VelocityContext();
Writer writer = new StringWriter();
t.merge(ctx, writer);
System.out.println(writer);
}
}
-------------------------------------------------------------------------------------
<html>
<head>
<title>Gimli"s Widgetarium</title>
</head>
<body>
<table>
#set ($rowCount = 1)
#set ($products = ["one", "two", "three"])
#foreach($product in $products)
#if ($rowCount % 2 == 0)
#set ($bgcolor = "#FFFFFF")
#else
#set ($bgcolor = "#CCCCCC")
#end
<tr>
<td bgcolor="$bgcolor">$product</td>
<td bgcolor="$bgcolor">$product</td>
</tr>
#set ($rowCount = $rowCount + 1)
#end
</table>
</body>
</html>
Use if in velocity
import java.io.StringWriter;
import java.io.Writer;
import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.tools.generic.IteratorTool;
public class IteratorToolExample {
public static void main(String[] args) throws Exception {
Velocity.init();
Template t = Velocity.getTemplate("./src/iteratorTool.vm");
VelocityContext ctx = new VelocityContext();
ctx.put("var", new IteratorTool());
Writer writer = new StringWriter();
t.merge(ctx, writer);
System.out.println(writer);
}
}
-------------------------------------------------------------------------------------
#set($list = ["A", "B", "C", "D", "E"])
#foreach($item in $list)
#if($velocityCount <= 3)
$item
#end
#end