`
canky
  • 浏览: 2743 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类

Velocity学习笔记(1)

阅读更多
记下我做的第一个小例子:

velocity的文档写得的确不是很好,废话一大堆,
看了大半天了连个小例子都做不出来,还抛异常...
网上一搜,居然有人因为这个原因转投freemarker门下了,velocity真是失败

步骤:
1.了解Dependencies:
Jakarta Commons Collections - required.
Jakarta Commons Lang - required.
Excalibur (ex-Avalon) Logkit - optional
Jakarta ORO - optional.

我们只需要前两个就可以了.
再加上velocity-1.6.3.jar

2.开发第一个例子:
basic/Basic.java
	public static void singletonUsage(){
		try {
			Properties props=new Properties();
			//set some properties to configure the velocity. 
			
			
			Velocity.init(props);
			
			VelocityContext context = new VelocityContext();
			
			context.put("name", new String("Velocity"));
			context.put("project", new String("Jakarta"));
			
			Template template = null;
			
			template = Velocity.getTemplate("./src/basic/BasicUsage.vm");
//默认模板的路径是当前目录,在eclipse运行时就是工程的根目录了
//为了方便查看,把模板放在跟类同一个文件夹
//开头的说明里也不提下哪个参数可以改变这个配置.唉

			StringWriter sw = new StringWriter();			
			template.merge(context, sw);

	        /* lets make our own string to render */
	        String s = "We are using $project $name to render this.";
	        Velocity.evaluate( context, sw, "logTagName", s );
	       //将template的输出加上s的输出,写到sw那里,然后打印出来.
	        System.out.println( sw );

		} catch (Exception e) {
			e.printStackTrace();
		}		
	}

运行后报错!
org.apache.velocity.exception.VelocityException: Failed to initialize an instance of org.apache.velocity.runtime.log.ServletLogChute with the current runtime configuration.
没事,作为coder,我们是一定要让自己爱上异常d,慢慢查吧
先google下,发现有几个人跟我同命相连,但是他们都没有解决..
靠自己吧,看了下velocity的例子,发现使用到了lib下的所有jar包
那我就先试试多加几个jar包进去吧,
嘿嘿,搞定,不抛异常了,输出结果:
Hi! This Velocity from the Jakarta project.
We are using Jakarta Velocity to render this.
实际上,多加commons-logging.jar一个jar就可以了,其他的不用加.


//模板位置对应的参数已经找到:file.resource.loader.path
1
0
分享到:
评论

相关推荐

    velocity学习笔记

    ### Velocity学习笔记精要 **一、Velocity简介与特点** Velocity是一种基于Java的模板引擎,用于将静态数据和动态内容结合在一起,生成最终的HTML、XML或其他格式的文档。其最大的特点是性能高、易于理解和使用,...

    velocity学习笔记与struts2整合

    1. avalon-logkit-2.1.jar - 用于日志处理。 2. commons-collections-3.2.jar - 提供集合操作的工具类。 3. commons-digester-1.8.jar - 解析XML配置文件的库。 4. commons-lang-2.1.jar - 常用的Java语言工具包。 5...

    Struts2学习笔记

    根据给定的文件信息,以下是对Struts2学习笔记中涉及的关键知识点的详细解析: ### Struts2框架概览 #### MVC模式的理解与演进 Struts2是基于MVC(Model-View-Controller)模式设计的一种Java Web开发框架。在MVC...

    大数据技术原理学习笔记.docx

    本笔记基于林子雨老师在MOOC上的《大数据技术原理》课程,旨在为IT从业者和大学生提供一个全面了解大数据的基础框架。 首先,我们要认识到大数据的发展背景。随着互联网的普及,以及物联网、社交媒体、移动设备等...

    SpringBoot学习笔记.docx

    这篇学习笔记将引导我们深入了解 SpringBoot 的基本用法,包括项目的创建、返回视图、数据库交互、前端与后端数据传递、日志管理和安全控制等方面。 1. **新建项目**: 创建 SpringBoot 项目通常是通过 Maven 或 ...

    张龙圣思园struts2学习笔记word

    张龙圣思园的Struts2学习笔记,无疑为Java开发者提供了一份宝贵的参考资料,它可能涵盖了Struts2的基础概念、核心组件、配置方式以及实战技巧。 首先,让我们深入了解Struts2的核心特性。Struts2是MVC(Model-View-...

    java私人学习笔记

    Java私人学习笔记主要涵盖了Java编程语言以及与其相关的几个著名框架——Spring、Struts2和Hibernate,还有前端开发中常用的JavaScript。这些技术在IT行业中的应用广泛,是许多企业级应用开发的基础。以下是对这些...

    Spring3.0学习笔记

    尚学堂的Spring学习笔记.doc可能包含对这些特性的详细解释、实例代码以及如何在实际项目中应用的指导,对于想要深入理解Spring 3.0的开发者来说是一份宝贵的参考资料。通过阅读这份笔记,你可以系统地学习Spring 3.0...

    Hadoop学习笔记整理

    "Hadoop学习笔记整理" 本篇笔记对Hadoop进行了系统的介绍和总结,从大数据的基本流程到Hadoop的发展史、特性、集群整体概述、配置文件、HDFS分布式文件系统等方面都进行了详细的讲解。 一、大数据分析的基本流程 ...

    Freemaker_入门+深入+开发指南+学习笔记

    相比于其他模板引擎如Velocity,Freemaker支持更为灵活的过程调用、递归处理以及闭包回调等功能,使得开发者能够更加便捷地实现复杂的业务逻辑。 #### 二、基本语法 Freemaker使用特定的标签来定义其语法结构,这些...

    数据挖掘网课学习笔记1

    关于大数据的定义,通常它被描述为具有三个V的特性:Volume(大量)、Velocity(高速)和Variety(多样)。近年来,随着技术的发展,又增加了两个V:Value(价值)和Veracity(真实性),强调了大数据的质量和潜在的...

    struts2入门教程和学习笔记

    这个入门教程和学习笔记是针对初学者设计的,帮助他们快速理解和掌握Struts2的核心概念和实践操作。 Struts2的学习首先需要理解MVC模式。MVC模式将应用逻辑分为三个部分:模型负责业务逻辑,视图负责展示数据,而...

    Struts2_学习笔记

    本学习笔记将深入探讨Struts2的核心概念、工作原理以及如何在实际开发中有效利用它。 **1. MVC模式与Struts2** MVC模式是一种软件设计模式,它将业务逻辑(Model)、用户界面(View)和数据控制(Controller)分离...

Global site tag (gtag.js) - Google Analytics