注册 | 登录
收藏 | 帮助
热门文章
编辑推荐
相关文章  
PHOTOSHOP鼠绘手机教程——方法简
恶意网页病毒十三大症状分析及简
Win2000 Server入侵监测揭秘
入侵NTserver典型途径攻击基础
简单三步走堵死SQLServer注入漏洞
查看系统中是否有简单木马
震惊!远程盗取ADSL帐号很简单(
用简单命令检查电脑是否被安装木
Windows 2000 Server 系统安装后
DNS 系统设定例--11.[Fwd] 特殊网
您现在的位置: 顶尖设计 >> IT学院 >> 编程开发 >> Jsp >> 文章正文
简单Velocity实践
作者:佚名  来源:不详  点击:  更新:2006-12-17
简介:

Velocity是一种模板语言,它的作用、好处等可以找到很多资料,下面我们分二次来进行简单实践,第一部份是hello world 。看我做完这个实验,你就知道,初步上手其实是一件简单的事情:)

1、 建立模板文件 hello.vm,简单些,全文如下:

Hello, $name

2、 建立Class文件:

import java.io.BufferedWriter;
import java.io.OutputStreamWriter;
import org.apache.velocity.Template;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
public class HelloVelocity {
public static void main(String[] args) throws Exception {
Velocity.init();
VelocityContext context = new VelocityContext();
context.put("name", "yy");
BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(System.out));
Template template = Velocity.getTemplate("hello.vm");
template.merge(context, writer);
writer.flush();
writer.close();
}
}

让Class文件运行起来,注意把vm文件放在工作目录下,看看,输出是不是 hello,yy J

过程是这样的:初始化 – 获取context – context 输出对像给值 – 获取模板文件 – 写模板文件 – 关闭资源

到这里半懂不懂的吧,没关系,我们毕竟让它跑起来了,接着来第二次实验。

这一实验中我们让Velocity在web 应用中和Struts结合起来,让struts 的forward 转向*.vm文件.。

我们必须先down 到 velocity-tools 工具,如下地址:http://jakarta.apache.org/velocity/tools/

为和struts结合起来,我们要做这么4步的工作:

1、 VelocityStruts 和 VelocityView 这二个工具必须加到项目中,也就是把你的velocity-tools-1.1.jar 和velocity-1.4.jar 都放到项目的Lib 中

2、 在web.xml 中添加 VelocityViewServlet ,它是vm 文件的引擎

<servlet-name>velocity</servlet-name> <servlet-class>org.apache.velocity.tools.view.servlet.VelocityViewServlet
</servlet-class>
<servlet-mapping>
<servlet-name>velocity</servlet-name>
<url-pattern>*.vm</url-pattern>
</servlet-mapping>

也就是以上这么二部份。

3、 添加Velocity.properties (这一步不是必须的)

4、 添加toolbox.xml (这一步不是必须的)

如果加了后二步,则web.xml 文件里要加上

<init-param>
<param-name>org.apache.velocity.toolbox</param-name>
<param-value>/WEB-INF/toolbox.xml</param-value>
</init-param>
<init-param>
<param-name>org.apache.velocity.properties</param-name>
<param-value>/WEB-INF/velocity.properties</param-value>
</init-param>
<load-on-startup>10</load-on-startup>

好,下面开始我们的实验,建一个最基本的struts项目,提交title 和 content ,这些不必多说了,注意forward指向.vm 文件

Action文件如下:

InfoForm infoForm = (InfoForm)form ;
HttpSession session = request.getSession() ;
session.setAttribute("title",infoForm.getTitle());
session.setAttribute("content",infoForm.getContent());
return(mapping.findForward("show"));

forward 在struts-config.xml 中说明如下:

<forward name="show" path="/show.vm"/>

Show.vm 文件全文如下:

$title
<br>
$content
<br>
Lets count : #foreach($i in [1..5])$i #end

除了显示session中的变量,又放了一个循环写数,可以看到简单的foreach

运行起来,看到效果了吗?是不是有点像用标签,当然它的功能还比较多,比较强大,用二个小时足以上手了吧,详细用的时候,再查手册,一定不是什么难事。






  • 上一篇文章:
  • 下一篇文章:
  • 分享此文:该页面添加到 Mister Wong 添加到雅虎Yahoo!收藏 Add to:Del.icio.us Post to Furl Digg this 添加到Google书签 reddit spurl blogmarks 365Key 评论  收藏  分享  打印
     我来说两句
    姓名:       验证码:   
    主页: 
    评分: 1分 2分 3分 4分 5分
    本频道近期热评文章:
      关于我们 | 联系我们 | 站点地图 | 广告投放 | 友情链接 | 在线留言 | 版权申明
    版权所有 © 2004-2007 顶尖设计(bobd.cn)
    未经授权禁止转载,摘编,复制本站内容或建立镜像. 沪ICP备07504942号 
    网络110
    报警服务