- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Java的模板引擎Velocity初体验
不少人看过或了解过Velocity,名称字面翻译为:速度、速率、迅速,用在Web开发里,用过的人可能不多,大都基本知道和在使用Struts,到底Velocity和Struts是如何联系,怎么看待Velocity呢?让我们来尝试一下,了解Velocity的概念,通过在这里的介绍,强调在技术选择上的问题,让大家在选择项目开发时,可以考虑Velocity,另外也让大家了解它的思想,毕竟它提供了一个很好的思维方式,给大家换换筋骨,换一种思考的方式。
本文基于你对Java开发有一定基础,知道MVC,Struts等开发模式。
Velocity是一种Java模版引擎技术,该项目由Apache提出,由另外一种引擎技术Webmacro引深而来。那什么是官方的Velocity定义呢?Apache对它的定义是:一种基于Java的模板引擎,但允许任何人使用简单而强大的模板语言来引用定义在Java代码中的对象。目前最新的版本是1.4,可以在/velocity/index.html查找更多信息。
其实说白了Velocity也就是MVC架构的一种实现,但它更多的是关注在Model和View之间,作为它们的桥梁。对于MVC的最流行架构Struts来说,相信大家都不陌生,很多开发人员已经大量在使用Struts架构,包括IBM的Websphere 5以上的管理平台版本,Struts技术很好的实践了MVC,它有效的减少Java代码在View(Jsp)中的出现,但在Model和View之间还是依靠Struts的Taglib技术来实现,试想如果前台开发的网页设计师对Struts乃至Taglib不熟(相信也挺难熟的,包括后期的维护人员也一样),将会对网页设计师和前台开发工程师的相互协作开发带来很大的难度,现实开发中也还是存在这样事实,网页设计师和前台开发之间的工作或多或少还是存在一定的耦合,怎样最大限度的解决这个难题呢?还是让我们来看看Velocity或者说这个概念吧。
先做一个最简单的Velocity开发例子,让大家看看Velocity是怎样工作的:
1、创建1个文件,文件名为:hellovelocity.vm,即velocity模版(其实和html一样),内容:
Welcome $name to J!
today is $date.
2、创建1个java文件,HelloVelocity.java,内容:
package com.javayou.velocity;
import java.io.StringWriter;
import java.util.*;
import org.apache.velocity.app.VelocityEngine;
import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
/**
* @author Liang.xf 2004-12-14
*/
public class HelloVelocity public static void main String[] args throws Exception //初始化并取得Velocity引擎
VelocityEngine ve new VelocityEngine ;
ve.init ;
//取得velocity的模版
Template t ve.getTemplate hellovelocity.vm ;
//取得velocity的上下文context
VelocityContext context new VelocityContext ;
//把数据填入上下文
context.put name, Liang ;
context.put date, new Date .toString ;
//为后面的展示,提前输入List数值
List temp new ArrayList ;
temp.add 1 ;
temp.add 2 ;
context.put list, temp ;
//输出流
StringWriter writer new StringWriter ;
//转换输出
t.merge context, writer ;
System.out.println writer.toString ; 3、在/site/binindex.cgi上下载Velocity 1.4 zip,解压后获取velocity-1.4.jar,用它来编译上面的类HelloVelocity.java。
4、把1上的hellovelocity.vm copy到运行的当前目
您可能关注的文档
最近下载
- 2024天津市津南区事业单位考试笔试题库及答案.docx VIP
- [2025秋期版]国开电大专科《人力资源管理》一平台形考任务一至四在线形考试题及答案 (2).pdf
- 2025年新版人教版四年级上册英语 四上Unit 2 My friends单元整体教学设计(1).pdf VIP
- 数字媒体技术专业申报材料.doc VIP
- 2025上海市农业科学院工作人员招聘(2025年第二批)笔试备考题库及答案解析.docx VIP
- 2024年浙江省杭州市中考数学试题卷(含答案详解).docx
- 老年人日常生活护理案例及分析.docx VIP
- 2025天津市津南区法院系统招聘考试真题.docx VIP
- 2025上海市农业科学院工作人员招聘(2025年第二批)笔试参考题库附答案解析.docx VIP
- 国有大型煤炭企业如何科学编制“十五五”发展规划.docx
文档评论(0)