zoukankan      html  css  js  c++  java
  • NVelocity 类操作模板

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;

    using System.Web;
    using System.IO;
    using NVelocity.App;
    using NVelocity;
    using NVelocity.Runtime;

    namespace Common
    {
    public class NVelocityHelper
    {
    private VelocityEngine velocityEngine = null;
    private VelocityContext vc = null;
    public NVelocityHelper(string templatePath, string key, object value)
    {

    //1.创建Velocity 引擎(VelocityEngine)并设置属性
    velocityEngine = new VelocityEngine();
    velocityEngine.AddProperty(RuntimeConstants.RESOURCE_LOADER, "file"); // Velocity加载类型
    velocityEngine.AddProperty(RuntimeConstants.FILE_RESOURCE_LOADER_PATH, // Velocity加载文件路径
    HttpContext.Current.Server.MapPath("~/" + templatePath + "/"));
    velocityEngine.AddProperty(RuntimeConstants.INPUT_ENCODING, "utf-8"); // 输入编码格式设置
    velocityEngine.AddProperty(RuntimeConstants.OUTPUT_ENCODING, "utf-8"); // 输出编码格式设置
    velocityEngine.Init();
    //2.Velocity 上下文对象设置
    vc = new VelocityContext();
    vc.Put(key, value);
    }

    public NVelocityHelper(string key, object value)
    {
    //1.创建Velocity 引擎(VelocityEngine)并设置属性
    velocityEngine = new VelocityEngine();
    velocityEngine.AddProperty(RuntimeConstants.RESOURCE_LOADER, "file"); // Velocity加载类型
    velocityEngine.AddProperty(RuntimeConstants.FILE_RESOURCE_LOADER_PATH, // Velocity加载文件路径
    HttpContext.Current.Server.MapPath("~/Templates/"));
    velocityEngine.AddProperty(RuntimeConstants.INPUT_ENCODING, "utf-8"); // 输入编码格式设置
    velocityEngine.AddProperty(RuntimeConstants.OUTPUT_ENCODING, "utf-8"); // 输出编码格式设置
    velocityEngine.Init();
    //2.Velocity 上下文对象设置
    vc = new VelocityContext();
    vc.Put(key, value);
    }


    public void Render(string templatFileName)
    {
    //3.创建模板
    Template template = velocityEngine.GetTemplate(templatFileName);

    //4.合并模板和上下文对象、输出
    StringWriter writer = new StringWriter();
    template.Merge(vc, writer);
    HttpContext.Current.Response.Write(writer.ToString());
    HttpContext.Current.Response.End();
    }

    }
    }

  • 相关阅读:
    pat乙级1018
    下拉框多选,出现这种情况,求大神帮我看看
    Filter 过滤器
    拦截器和过滤器区别
    Servlet 生命周期
    cannot simultaneously fetch multiple bags 问题的解决办法
    JPA规范及其它持久层框架
    数据库设计的三大范式
    装饰者模式
    Java 流
  • 原文地址:https://www.cnblogs.com/lierjie/p/3748045.html
Copyright © 2011-2022 走看看