本例子是访问:D:\3.0_BCSHOP-3106\product\example.vm下模版
package com.bcgogo.product.model;
import org.apache.velocity.*;
import org.apache.velocity.Template;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.app.VelocityEngine;
import org.apache.velocity.exception.ParseErrorException;
import org.apache.velocity.exception.ResourceNotFoundException;
import org.apache.velocity.runtime.resource.loader.StringResourceLoader;
import org.apache.velocity.runtime.resource.util.StringResourceRepository;
import java.io.BufferedWriter;
import java.io.OutputStreamWriter;
import java.util.ArrayList;
import java.util.Properties;
/**
* Created by IntelliJ IDEA.
* User: WWW
* Date: 12-9-3
* Time: 上午9:58
* To change this template use File | Settings | File Templates.
*/
public class Example {
public Example() {
try {
/*
* setup
*/
Properties p = new Properties();
p.setProperty("runtime.log", "velocity.log");
p.setProperty(Velocity.FILE_RESOURCE_LOADER_PATH, "D:\\3.0_BCSHOP-3106\\product");
Velocity.init(p);
/*
* Make a context object and populate with the data. This
* is where the Velocity engine gets the data to resolve the
* references (ex. $list) in the template
*/
VelocityContext context = new VelocityContext();
context.put("list", getNames());
/*
* get the Template object. This is the parsed version of your
* template input file. Note that getTemplate() can throw
* ResourceNotFoundException : if it doesn't find the template
* ParseErrorException : if there is something wrong with the VTL
* Exception : if something else goes wrong (this is generally
* indicative of as serious problem...)
*/
Template template = null;
try {
template = Velocity.getTemplate("/example.vm");
} catch (ResourceNotFoundException rnfe) {
System.out.println("Example : error : cannot find template " );
} catch (ParseErrorException pee) {
System.out.println("Example : Syntax error in template " + ":" + pee);
}
/*
* Now have the template engine process your template using the
* data placed into the context. Think of it as a 'merge'
* of the template and the data to produce the output stream.
*/
BufferedWriter writer = new BufferedWriter(
new OutputStreamWriter(System.out));
if (template != null)
template.merge(context, writer);
/*
* flush and cleanup
*/
writer.flush();
writer.close();
} catch (Exception e) {
System.out.println(e);
}
}
public ArrayList getNames() {
ArrayList list = new ArrayList();
list.add("ArrayList element 1");
list.add("ArrayList element 2");
list.add("ArrayList element 3");
list.add("ArrayList element 4");
return list;
}
public static void main(String[] args) {
Example t = new Example();
}
}
分享到:
相关推荐
在IT行业中, Velocity是一款...通过以上方法,我们可以构建一个高效、可扩展的邮件发送系统,利用Velocity模板引擎的强大功能,使邮件内容更加个性化和多样化。在实际开发中,可以根据项目需求进行适当的调整和优化。
这个"Velocity + Servlet简单工程例子"是为了帮助那些正在学习Velocity的爱好者们更好地理解和应用Velocity模板语言到实际的Web开发中。Velocity通过将表现层(视图)与业务逻辑层(控制器)分离,实现了MVC(Model-...
其次,Velocity是一个快速、轻量级的Java模板引擎。它允许开发者使用简单的模板语言来创建动态内容,将HTML和业务逻辑分离,使得页面设计者和程序员可以协同工作。Velocity2相较于前一版本,增强了性能和易用性,...
Velocity是Apache软件基金会的一个开源项目,它是一款Java模板引擎,用于生成动态Web内容。 Velocity的主要目的是将呈现逻辑从业务逻辑中分离出来,使得开发者可以专注于应用程序的后端处理,而设计师则可以自由地...
4. **创建Velocity模板**: 在指定的资源路径(如`/WEB-INF/velocity/`)下创建`.vm`文件,如`example.vm`,并使用VTL语法引用模型中的数据。 5. **运行与测试**: 启动服务器,访问对应的URL,SpringMVC会调用...
Spring Velocity是一个将Velocity模板引擎与Spring框架集成的示例,这个例子主要展示了如何在Spring应用中使用Velocity来渲染动态内容。Velocity是一个Java模板引擎,它允许开发者将逻辑和表示分离,使得网页设计...
Velocity模板技术是一种用于分离HTML、XML、PDF等文档的格式和数据的模板引擎。它广泛应用于Java Web开发中,尤其在MVC架构下,用于视图层的渲染。Velocity的核心优势在于其强大的表达式语言、丰富的指令集以及高效...
《Spring Boot整合Velocity模板引擎详解》 在现代Java Web开发中,Spring Boot以其简洁的配置、强大的功能和高效的开发效率,成为了许多开发者的首选框架。而Velocity作为一款轻量级的模板引擎,能够帮助我们快速...
在提供的 `VelocityExample` 文件中,我们可以找到一个使用Velocity模板引擎的简单例子。这可能包括一个`.vm`模板文件,展示如何引用Java对象和执行控制结构,以及对应的Java代码,展示了如何创建上下文、加载模板并...
最后,Velocity是一个基于Java的模板引擎,它的设计目标是将模板语言与应用逻辑分离,使得开发者可以专注于页面布局和样式,而不用关心业务逻辑。Velocity模板语言简洁且易于理解,开发者可以在模板中嵌入Java表达式...
总的来说,Velocity官方工具包是学习和使用Velocity的重要资源,它为开发者提供了一个完整的环境,包括了必要的库和实例,有助于快速掌握Velocity模板引擎的使用方法,从而在实际项目中发挥出其强大的能力。...
Velocity是一个基于Java的模板引擎,它主要的作用是在Web开发中...总之,Velocity模板引擎因其简单和功能强大的特点,在Java Web开发中被广泛地采用,它支持开发者进行高效的模板设计,提高了Web应用的开发和维护效率。
Velocity是一个基于Java的模板引擎,它允许开发者在模板中使用特定的语法(Velocity Template Language, VTL)来插入动态内容。当模板与数据源结合时,Velocity会生成最终的静态输出,如HTML页面或XML文档。这遵循...
Velocity 是一个开源的 Java 模板引擎,它允许开发者将业务逻辑与表现层分离,使得网页设计人员可以专注于页面的布局和样式,而程序员则处理应用程序的后端逻辑。Velocity 通过使用简单的指令语言,使 HTML 页面中的...
在这个例子中,当“myAction”被调用后,Struts2会寻找名为`myTemplate.vm`的Velocity模板文件,并将Action中的模型数据注入到模板中进行渲染。 接下来,你需要在项目中创建Velocity模板文件。这个文件通常位于`WEB...
根据提供的标题、描述、标签及部分内容,我们可以了解到这段资料主要涉及的是Velocity模板引擎在.NET环境下的使用,并且特别提到了如何解决中文字符显示时出现的乱码问题。下面将对这些知识点进行详细的解读。 ### ...
Velocity是一个开源的Java模板引擎,它允许开发者将HTML与Java代码分离,使页面设计者和程序员可以协同工作,而无需关心彼此的代码。Velocity通过一个简单的语法,使得非程序员(如网页设计师)能够创建动态内容,而...
Velocity,作为Apache软件基金会的一个开源项目,是一个基于Java的模板引擎。它允许开发者将HTML页面的展示逻辑与应用逻辑分离,使得开发者可以专注于业务代码的编写,而设计师则可以专心于页面设计。Velocity的目标...
在这个例子中,`users.vm`是Velocity模板文件,其中可以使用`#foreach`循环遍历`users`列表,动态地显示用户信息。 **acon-pc-action.xml** 这个文件名可能是某种配置文件,可能包含关于应用程序如何处理请求或配置...