当前位置:首页 > 开发 > 互联网 > 正文

Velocity Toolbox

发表于: 2015-03-11   作者:antlove   来源:转载   浏览:
摘要: velocity.VelocityUtil package velocity; import org.apache.velocity.Template; import org.apache.velocity.app.Velocity; import org.apache.velocity.app.VelocityEngine; import org.apache.velocity.c

velocity.VelocityUtil

package velocity;

import org.apache.velocity.Template;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.app.VelocityEngine;
import org.apache.velocity.context.Context;
import org.apache.velocity.tools.ToolManager;

import java.io.StringWriter;

/**
 * Created by Administrator on 2015/3/11.
 */
public class VelocityUtil {

    public static String exportFixedVelocityWithToolbox() {
        // 创建引擎
        VelocityEngine ve = new VelocityEngine();
        // 设置模板加载路径,这里设置的是class下
        ve.setProperty(Velocity.RESOURCE_LOADER, "class");
        ve.setProperty("class.resource.loader.class", "org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader");
        // 进行初始化操作
        ve.init();
        // 加载模板,设定模板编码
        Template t = ve.getTemplate("template/velocity_template.vm", "UTF-8");
        // 设置初始化数据

        // 加载toolbox
        ToolManager manager = new ToolManager();
        manager.configure("/template/configuration.xml");

        Context context = manager.createContext();
        context.put("name", "张三");

        String[] hobbyArray={"吃饭","喝水","洗澡"};
        context.put("hobby", "爱好");
        context.put("hobbyArray", hobbyArray);

        // 设置输出
        StringWriter writer = new StringWriter();
        // 将环境数据转化输出
        t.merge(context, writer);

        return writer.toString();

    }

    public static void main(String[] args) {
        System.out.println(exportFixedVelocityWithToolbox());;
    }
}

 

template/configuration.xml

<toolbox>
    <tool>
        <key>date</key>
        <scope>application</scope>
        <class>org.apache.velocity.tools.generic.DateTool</class>
    </tool>
</toolbox>

 

template/velocity_template.vm

$name
$hobby:
#foreach($hobby in $hobbyArray)
    ${hobby}
#end

year : $date.getYear()
month: $date.getMonth()
month: $date.getDay()

current time : $date.get('yyyyMMdd:HHmmss')

 

 

Velocity Toolbox

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号