import java.io.StringWriter; import java.util.Map; import java.util.Properties; import org.apache.velocity.VelocityContext; import org.apache.velocity.app.Velocity; import org.apache.velocity.app.VelocityEngine; import com.alibaba.common.logging.Logger; import com.alibaba.common.logging.LoggerFactory; public class VelocityUtils { private static Logger logger = LoggerFactory.getLogger(VelocityUtils.class); private static String basePath = "vm/"; //resource目录下 public static String getTemplateContent(String templateName, Map<String, Object> contextMap) { //初始化Velocity模板 VelocityEngine velocityEngine = new VelocityEngine(); try { Velocity.init(); Properties properties = new Properties(); properties.setProperty(Velocity.RESOURCE_LOADER, "class"); properties.setProperty("class.resource.loader.class", "org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader"); velocityEngine.init(properties); } catch (Exception e) { logger.error(e.getMessage(), e); } //创建一个VeloctiyContext对象 VelocityContext context = new VelocityContext(); //向VelocityContext对象中放入一个键值对 for (Map.Entry<String, Object> e : contextMap.entrySet()) { context.put(e.getKey(), e.getValue()); } //创建一个输出流 StringWriter writer = new StringWriter(); try { //将模板与context中的对象结合,然后输出 velocityEngine.mergeTemplate(basePath + templateName, "GBK", context, writer); } catch (Exception e) { logger.error(e.getMessage(), e); } return writer.toString(); } }
相关推荐
** Velocity 模板使用指南中文版 ** Velocity 是一个基于 Java 的开源模板引擎,它允许开发者将业务逻辑与页面展示分离,使得网页设计者可以专注于页面的布局和样式,而程序员则关注于程序的逻辑处理。Velocity 在 ...
Velocity 模板使用指南中文版 Velocity 是一种流行的模板引擎,广泛应用于Java 和 .Net 平台。它提供了一个灵活、可扩展的模板语言,能够根据需要生成动态内容。本文档是 Velocity 模板使用指南中文版,旨在帮助...
这份文档《Velocity模板使用指南中文版》旨在帮助Java开发者更好地理解和应用Apache Velocity模板语言(Velocity Template Language,简称VTL)。无论是初学者还是有经验的开发者,都可以通过这份指南深入学习如何...
Velocity的能力远不止web站点开发这个领域,例如,它可以从模板(template)产生SQL和PostScript、XML,它也可以被当 作一个独立工具来产生源代码和报告,或者作为其他系统的集成组件使用。 里面有架包、使用方法...
velociy模板引擎介绍,使用example,demo。开发教程。
1. **模板语言(Template Language)**:Velocity模板语言(VTL)允许设计者使用简单的语法引用由Java代码定义的对象。VTL中的`$`符号用于引用变量,`#`字符用于执行指令。例如,`$customer.name`可以用来显示用户的...
Velocity模板语言(Velocity Template Language,简称VTL)是Apache软件基金会的Velocity项目中的一部分,它是一种用于生成动态网页内容的模板引擎。Velocity以其简洁、易读的语法,为Java开发者提供了一种高效的...
Velocity模板技术语法详细介绍,包括很详细的示例代码 1.变量………………………………………………………………………………1 2.循环………………………………………………………………………………2 3.条件语句...
4. 使用Velocity模板引擎,将解析出的信息填入模板,生成Java源码。 5. 编译生成的Java文件,添加到Spring Boot项目中。 在`demo`这个文件中,可能包含了上述步骤的示例代码或者配置文件。通过学习和理解这个示例,...
Velocity模板实例 Velocity模板实例 Velocity模板实例 Velocity模板实例
Velocity模板引擎Velocity模板引擎Velocity模板引擎Velocity模板引擎Velocity模板引擎Velocity模板引擎Velocity模板引擎Velocity模板引擎Velocity模板引擎Velocity模板引擎
本项目“使用了Struts结构和Velocity模板技术的BLOG”旨在演示如何结合这两种技术来创建一个功能完善的博客系统。 **Struts框架** Struts是一个基于MVC(Model-View-Controller)设计模式的Java Web框架。它为...
- **变量引用**:在Velocity模板中,通常使用`$variable`来引用Java对象的属性,例如`$user.name`表示获取名为"user"的对象的"name"属性。 - **指令**: - `#set`:用于赋值,如`#set($count = 1)`,将$count变量...
在这个"Velocity简单案例"中,我们可以推测其包含了一个基础的Velocity模板使用示例,可能包括以下几个关键知识点: 1. **Velocity模板语言(VTL)**: VTL是一种声明式语言,允许开发者在模板中插入变量、控制结构...
本项目主要探讨的是如何将SpringBoot与Mybatis、Velocity模板引擎进行整合,以便更高效地展示和处理数据。 首先,让我们深入了解SpringBoot的核心特性。SpringBoot的设计理念是“约定优于配置”,它内置了Tomcat...
这个压缩包包含了四本关于Velocity的经典中文教程,分别是《Velocity模板使用指南中文版》、《VTL语法参考指南中文版》、《Velocity Web应用开发指南中文版》和《velocity Java开发指南中文版》。以下是对这些教程...