栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Velocity简明教程(1)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Velocity简明教程(1)

引言

Velocity是一款非常高效的基于Java语言的模板引擎,应用十分广泛,尤其是应用在各类代码生成场景如现在非常流行的mybatis-plus-generator的默认模板引擎采用的就是Velocity。

目前,互联网上有很多关于Velocity教程的技术博客,然而多数文章的代码逻辑十分混乱,层次不清,多数仅仅只是实现了基本功能而已。为此,本系列博客将只介绍必要的、最少的代码,同时非常注重代码的逻辑,力求为大家提供最简明、最清晰的教程。

目标

快速掌握Velocity的基本用法; 方法

实例化VelocityEngine对象实例;准备context数据;准备writer对象;获得template对象并调用merge()方法;测试模板生成结果。 代码

import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.VelocityEngine;
import org.apache.velocity.context.Context;
import java.io.*;
import java.util.Properties;

public class Client {
    public static void main(String[] args) throws IOException {

        // (1) 获得engine实例对象;
        Properties p = new Properties();
        p.setProperty("file.resource.loader.class",
                "org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader");

        VelocityEngine velocityEngine = new VelocityEngine(p);
        velocityEngine.init();

        // (2.1) 准备context;
        Context context = new VelocityContext();
        context.put("name", "bob");

        // (2.2) 准备writer;
        Writer writer = new StringWriter();

        // (2.3) 开始合并生成;
//        Template template = new Template(); // !!!易出错点
        Template template = velocityEngine.getTemplate("demo.vm"); //
        template.merge(context, writer);

        // (3) 测试合并结果
        System.out.println(writer.toString());
    }
}

resources/demo.vm文件

hello, ${name}.
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/715691.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号