zoukankan      html  css  js  c++  java
  • web基础----->模板引擎Velocity的使用(一)

      Velocity 是一个基于 Java 的模板引擎框架,提供的模板语言可以使用在 Java 中定义的对象和变量上。今天我们就学习一下Velocity的用法。

    Velocity的第一个例子

    项目的主体是两个文件,文件的位置如下图:

    一、在pom中添加Velocity的依赖

    <dependency>
        <groupId>org.apache.velocity</groupId>
        <artifactId>velocity</artifactId>
        <version>1.7</version>
    </dependency>

     二、HelloVelocity的代码如下:

    package com.liuling;
    
    import org.apache.velocity.Template;
    import org.apache.velocity.VelocityContext;
    import org.apache.velocity.app.VelocityEngine;
    import org.apache.velocity.runtime.RuntimeConstants;
    import org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader;
    import org.junit.Test;
    
    import java.io.StringWriter;
    import java.util.ArrayList;
    import java.util.Date;
    import java.util.List;
    
    /**
     * Created by huhx on 2017-07-14.
     */
    public class HelloVelocity {
        @Test
        public void velocity_test_1() {
            VelocityEngine ve = new VelocityEngine();
            ve.setProperty(RuntimeConstants.RESOURCE_LOADER, "classpath");
            ve.setProperty("classpath.resource.loader.class", ClasspathResourceLoader.class.getName()); 
            ve.init();
    
            Template t = ve.getTemplate("template/Hellovelocity.vm");
            VelocityContext ctx = new VelocityContext();
    
            // 数据
            ctx.put("className", "HelloVelocity");
            ctx.put("description", "My first velocity demo.");
            ctx.put("date", (new Date()).toString());
    
            List temp = new ArrayList();
            temp.add("username");
            temp.add("password");
            ctx.put("list", temp);
    
            StringWriter sw = new StringWriter();
            t.merge(ctx, sw);
            System.out.println(sw.toString());
        }
    }

     三、Hellovelocity.vm的内容如下:

    #set( $myName = "huhx" )
    /**
     * @author: $myName
     * @date:   $date
     * @description: $description
     */
    public class $className {
    #foreach($name in $list)
        private String $name;
    #end
    }

     四、运行的结果如下:

    /**
     * @author: huhx
     * @date:   Fri Jul 14 10:48:46 CST 2017
     * @description: My first velocity demo.
     */
    public class HelloVelocity {
        private String username;
        private String password;
    }

    友情链接

  • 相关阅读:
    Python3 CGI编程实现教程
    SSL密钥协商过程分析
    浏览器同源策略理解
    Python3+selenium 报错处理:“selenium.common.exceptions.NoAlertPresentException: Message: No alert is active”
    Python3 try-except、raise和assert解析
    计算机视觉常见技术(待理解)
    中国大学MOOC-陈越、何钦铭-数据结构-2017春
    Coursera机器学习+deeplearning.ai+斯坦福CS231n
    总结一些机器视觉库
    git rebase 多分支操作
  • 原文地址:https://www.cnblogs.com/huhx/p/baseusewebvelocity1.html
Copyright © 2011-2022 走看看