原文: http://www.java2000.net/p7845
输出结果
结果分析:
<#if
语句通过后面的测试条件,如果为true,则显示
如果不等于,则进入<#else>部分显示,
以</#if>结束。
<script type="text/javascript"> </script> <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"> </script>
测试IF语句的使用
程序package freemarker;
import java.io.File;import java.io.FileOutputStream;import java.io.OutputStreamWriter;import java.io.Writer;import java.util.HashMap;import java.util.Map;import freemarker.template.Configuration;import freemarker.template.Template;
public class TestIf { private Configuration cfg;
public Configuration getCfg() { return cfg; }
public void init() throws Exception { cfg = new Configuration(); cfg.setDirectoryForTemplateLoading(new File("bin/freemaker")); }
public static void main(String[] args) throws Exception { TestIf obj = new TestIf(); obj.init(); Map root = new HashMap(); root.put("user", "java2000.net"); Map latestProduct = new HashMap(); latestProduct.put("url", "http://www.java2000.net"); latestProduct.put("name", "Java世纪网"); root.put("latestProduct", latestProduct); Template t = obj.getCfg().getTemplate("TestIf.ftl"); Writer out = new OutputStreamWriter(new FileOutputStream("TestIf.html"), "GBK"); t.process(root, out); System.out.println("Successfull................"); }}
模板
import java.io.File;import java.io.FileOutputStream;import java.io.OutputStreamWriter;import java.io.Writer;import java.util.HashMap;import java.util.Map;import freemarker.template.Configuration;import freemarker.template.Template;
public class TestIf { private Configuration cfg;
public Configuration getCfg() { return cfg; }
public void init() throws Exception { cfg = new Configuration(); cfg.setDirectoryForTemplateLoading(new File("bin/freemaker")); }
public static void main(String[] args) throws Exception { TestIf obj = new TestIf(); obj.init(); Map root = new HashMap(); root.put("user", "java2000.net"); Map latestProduct = new HashMap(); latestProduct.put("url", "http://www.java2000.net"); latestProduct.put("name", "Java世纪网"); root.put("latestProduct", latestProduct); Template t = obj.getCfg().getTemplate("TestIf.ftl"); Writer out = new OutputStreamWriter(new FileOutputStream("TestIf.html"), "GBK"); t.process(root, out); System.out.println("Successfull................"); }}
- <html>
- <head>
- <title>Welcome!</title>
- </head>
- <body>
- <h1>
- Welcome ${user}<#if user == "java2000.net">, our beloved leader<#else>my friend</#if>!
- </h1>
- <p>Our latest product:
- <a href="${latestProduct.url}">${latestProduct.name}</a>!
- </body>
- </html>
- <html>
- <head>
- <title>Welcome!</title>
- </head>
- <body>
- <h1>
- Welcome java2000.net, our beloved leader!
- </h1>
- <p>Our latest product:
- <a href="http://www.java2000.net">Java世纪网</a>!
- </body>
- </html>
结果分析:
<#if
语句通过后面的测试条件,如果为true,则显示
如果不等于,则进入<#else>部分显示,
以</#if>结束。
<script type="text/javascript"> </script> <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"> </script>
本文介绍了一个使用Freemarker模板引擎处理条件逻辑的例子。通过IF语句实现不同内容的展示,演示了如何根据变量值的变化来改变输出。
1404

被折叠的 条评论
为什么被折叠?



