欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Velocity JAVA引擎模板 (六) 输出到文件

程序员文章站 2022-05-02 20:27:46
...

Velocity JAVA引擎模板 (六) 输出到文件

本文是【条件语句】demo

java

/**
     * 输出到文件
     */
    @Test
    public void test6() throws IOException {

        //1 加载配置
        Properties properties = new Properties();
        properties.load(Test.class.getClassLoader().getResourceAsStream("velocity.properties"));
        Velocity.init(properties);

        //2 创建上下文对象
        VelocityContext context = new VelocityContext();

        //2 将数据对象添加到此上下文中
        context.put("title", "赵先森");
        context.put("body", "这是内容");

        //4选择模板
        Template template = Velocity.getTemplate("./src/test/resources/template/test5.vm");

        //4创建文件

        File saveFile = new File("D:\\idea_workspace\\hp-generator\\src\\test\\resources\\template\\test5.html");

        //获得它的父类文件,如果不存在,就创建
        if (!saveFile.getParentFile().exists()) {
            saveFile.getParentFile().mkdirs();
        }
        //创建文件输出流

        FileOutputStream outStream = new FileOutputStream(saveFile);
        //因为模板整合的时候,需要提供一个Writer,所以创建一个Writer
        OutputStreamWriter writer = new OutputStreamWriter(outStream);
        //创建一个缓冲流
        BufferedWriter bufferWriter = new BufferedWriter(writer);

        //5 合并模板和数据并输出

        template.merge(context, bufferWriter);

        //强制刷新
        bufferWriter.flush();

        outStream.close();

        bufferWriter.close();
    }

模板 test5.html

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>$title</title>
    </head>
    <body>
        $body
    </body>
</html>
相关标签: Velocity