博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
introduction of velocity
阅读量:4695 次
发布时间:2019-06-09

本文共 1189 字,大约阅读时间需要 3 分钟。

一.velocity 简介

基于java 的模板引擎,apache 旗下的开源软件项目。

目的在于隔离 表示层和业务逻辑层,当然现在做的不仅仅是这些。

二.应用场景

  • web 应用程序:创建html页面,页面的动态信息有velocity框架来处理
    意味着可以不使用JSP等动态语言
  • 源代码生成:基于模板生成java,sql源代码
  • email 生成:将邮件模板存储在文本文件
  • xml转换:velocity 提供一个Ant 任务-Anakia,Anakia 读取xml文件,利用velocity 模板转换为所需的文档格式

三.基本语法

1.关键字以#开头

2.变量以$开头,变量类型是弱类型

3.定义函数

#macro(macroname arg1 arg2)

#end

调用

#macroname(arg1 arge)

4.#parse,#include

两者都是引用外部文件,

#parse会将引用的内容作为源码文件执行,会对代码进行解析
#include拷贝替换所有的文本内容

更多

四.第一个项目—-场景1(web应用程序)

pre:
jar 包下载

需要引入velocity-1.7.jar,以及lib包下面jar文件

VelocityTag

1.初始化VelocityEngine

VelocityEngine ve = new VelocityEngine();    // Velocity.java implements RuntimeConstants    // so you can use RuntimeConstants.RESOURCE_LOADER="resource.loader"    ve.setProperty(Velocity.RESOURCE_LOADER, "classpath");    ve.setProperty("classpath.resource.loader.class", ClasspathResourceLoader.class.getName());    ve.init();

2.关联模板文件

Template template = ve.getTemplate("velocity/firstVelocity.vm");

3.写入动态内容

VelocityContext context = new VelocityContext();    context.put("first", "fristVelocityExample");

4.输入到浏览器

PrintWriter pw = response.getWriter();    template.merge(context, pw);

代码

转载于:https://www.cnblogs.com/stoneFang/p/6715306.html

你可能感兴趣的文章
DDR工作原理(转)
查看>>
(Frontend Newbie) Web三要素(一)
查看>>
(转载-学习)python wsgi 简介
查看>>
QPushButton 控制两种状态
查看>>
一点小基础
查看>>
PHP 自动加载类 __autoload() 方法
查看>>
JDK中的Timer和TimerTask详解(zhuan)
查看>>
【python练习】ATM&购物商城程序
查看>>
nginx 日志问题(\x22)
查看>>
装饰器、迭代器、生成器
查看>>
类对象作为类成员
查看>>
面向对象和面向过程的区别及优劣对比详解
查看>>
const与指针
查看>>
thsi指针的一些用法及作用
查看>>
c++友元
查看>>
c++运算符重载
查看>>
一元运算符重载
查看>>
Windows 远程栈溢出挖掘
查看>>
(网页)the server responded with a status of 403 (Forbidden)
查看>>
葡萄城报表介绍:Java 报表
查看>>