VelocityEngine是一个模板引擎,能够基于模板生成指定的文件代码。
使用方法如下:
VelocityEngine engine = new VelocityEngine();// 定义模板引擎
Properties properties = new Properties();// 模板引擎属性
properties.setProperty(Velocity.RESOURCE_LOADER, "file");// 定义资源加载器类型,此处为file
properties.setProperty(Velocity.FILE_RESOURCE_LOADER_PATH, path); // 定义文件加载路径path
engine.init(properties);// 根据定义的属性,初始化模板引擎
// 定义模板替换上下文
VelocityContext context = new VelocityContext();
context.put("orgname", (String)param.get("orgname"));
context.put("account", (String)param.get("account"));
context.put("startdate", (String)param.get("startdate"));
。。。。。。
// 获取模板并写入到指定的文件中,同时将模板文件中的占位符替换成context中的内容。
Template template = engine.getTemplate((String)param.get("vmname"), "GBK"); // 获取模板
String tmpname = UUID.randomUUID().toString()+".html";
BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(new File(path+tmpname)), "GBK"));
template.merge(context, writer);
writer.flush();
writer.close();
相关推荐
在Spark中使用Apache Velocity的主要目的是为了生成报告、邮件或者其他需要动态内容的场景。Velocity通过使用简洁的模板语言,使得非程序员也能理解并编辑模板。$bodyContent变量在Velocity模板中是一个特殊变量,它...
博文链接:https://youlong05.iteye.com/blog/47172
props.setProperty("class.resource.loader.class", "org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader"); return new VelocityEngine(props); } } @Service public class EmailService { ...
- **参考资源**: 在使用Velocity时,开发者需要了解其依赖的库,例如Apache Commons Logging,用于日志记录,以及可能的模板解析库,如JDOM或DOM4J,用于处理XML结构的模板。 - **它是如何工作的?**: Velocity...
Velocity 是一种 Java 模板引擎技术,由 Apache 提出,是一种基于 Java 的模板引擎,允许任何人使用简单而强大的模板语言来引用定义在 Java 代码中的对象。Velocity 的主要功能是桥梁 Model 和 View 之间,作为它们...
关于VelocityEngine和Velocity类的区别,通常推荐使用VelocityEngine,因为它提供了更高级的配置和管理功能。初始化VelocityEngine有多种方法,包括无参数的init(),带Properties参数的init(Properties p),以及带...
import org.apache.velocity.app.VelocityEngine; import org.apache.velocity.context.Context; // 初始化VelocityEngine VelocityEngine ve = new VelocityEngine(); ve.init(); // 创建上下文对象 Context ...
public VelocityEngine velocityEngine() { Properties props = new Properties(); props.setProperty("resource.loader", "class"); props.setProperty("class.resource.loader.class", "org.apache.velocity....
例如,创建一个新的 `VelocityContext` 对象,然后将数据模型绑定到它,最后使用 `Template` 和 `VelocityEngine` 来渲染模板: ```java import org.apache.velocity.app.VelocityEngine; import org.apache....
import org.apache.velocity.app.VelocityEngine; import java.io.StringWriter; public class VelocityDemo { public static void main(String[] args) { // 创建VelocityEngine实例 VelocityEngine ve = new ...
使用`VelocityEngine`实例化并初始化Velocity引擎,然后调用`mergeTemplate`方法将模板与上下文合并,生成最终的输出字符串。例如: ```java VelocityEngine engine = new VelocityEngine(); engine.init(); ...
import org.apache.velocity.app.VelocityEngine; public class HelloWorld { public static void main(String[] args) throws Exception { VelocityEngine ve = new VelocityEngine(); ve.init(); Template t ...
首先,创建一个`VelocityEngine`实例,并设置`resource.loader`属性为"class",这表明我们要使用`ClasspathResourceLoader`。接着,设置"class.resource.loader.class"属性为`org.apache.velocity.runtime.resource....
import org.apache.velocity.app.VelocityEngine; import org.apache.velocity.Template; import org.apache.velocity.VelocityContext; public class XmlGenerator { public static void main(String[] args) { ...
.net velocity 模板引擎 用于vistual studio 下的模板开发
Template template = VelocityEngineUtils.getTemplateFromResourceUrl(velocityEngine, templatePath); File outputFile = new File(outputPath); Writer writer = new FileWriter(outputFile); template.merge...
1. **创建引擎实例**:通过`org.apache.velocity.app.VelocityEngine`初始化Velocity引擎。 2. **设置配置**:配置Velocity,例如模板路径、缓存策略等。 3. **加载模板**:使用引擎加载模板文件。 4. **填充上下文*...
在Java代码中,你可以通过`@Autowired`注解注入`VelocityEngine`实例,然后使用它来解析模板并填充数据。以下是一个示例,展示了如何从数据库获取数据,然后将其合并到`ksxx.vm`模板中,并最终将结果传递给JSP页面:...