Velocity之Hello World(tomcat下配置Velocity)
本文主要参考:http://hi.baidu.com/dalianjingying/item/1fb3a98ad64dcac299255f72
http://wangbaoaiboy.blog.163.com/blog/static/52111910200710234721806/
1、配置需要的jar包:
(1.1)下载 velocity-tools-2.0.zip ,下载地址 http://archive.apache.org/dist/velocity/tools/
(1.2)解压velocity-tools-2.0.zip ,拷贝解压后到目录下的 lib 文件夹下,拷贝所有的jar包 到D:\Program Files (x86)\apache-tomcat-7.0.42-windows-x64\apache-tomcat-7.0.42\webapps\webDemo\WEB-INF\lib (如果没有lib,则自己建立lib)
PS1:velocity-tools-2.0目录结构:
D:\Program Files (x86)\velocity-1.6.3\velocity-tools-2.0\velocity-tools-2.0 的
目录
2013/08/08 11:28 <DIR> .
2013/08/08 11:28 <DIR> ..
2013/08/08 11:28 618 CONTRIBUTORS
2013/08/08 11:28 <DIR> docs
2013/08/08 11:28 <DIR> examples
2013/08/08 11:28 <DIR> lib
2013/08/08 11:28 11,558 LICENSE
2013/08/08 11:28 465 NOTICE
2013/08/08 11:28 2,690 README.txt
2013/08/08 11:28 1,416 STATUS
2013/08/08 11:28 772 WHY_THREE_JARS.txt
6 个文件 17,519 字节
5 个目录 68,890,578,944 可用字节
PS2:
tools里有很多VTL页面用到的常用工具模块,相对jsp的常用工具来说,VTL将直接引用tools里的method进行事务处理,而不像jsp需要引用对象的属性来进行操作,省去了很多冗余的代码,方便页面制作者的眼睛。
2、配置velocityViewServlet
(2.1)在web.xml里面添加如下 <servlet> ***</servlet-mapping> 之间的配置
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
--> <web-app xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
version="3.0"
metadata-complete="true"> <servlet>
<servlet-name>velocityView</servlet-name>
<servlet-class>org.apache.velocity.tools.view.servlet.VelocityViewServlet</servlet-class>
<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>
</servlet>
<servlet-mapping>
<servlet-name>velocityView</servlet-name>
<url-pattern>*.vm</url-pattern>
</servlet-mapping> </web-app>
作下解释,velocityView的servlet定义, 也就是VTL处理时将全权交给这个servlet,而下面几行servlet-mapping代码,定义了处理文件的后缀为.vm的文件将全数交给viewServlet处理,很简单吧?hoho
继续解释中间那段param设定,这里将用到一个toolbox的定义,引用toolbox的定义来初始化viewServlet
(2.2)在web.xml同级目录下新建 toolbox.xml,内容如下
<?xml version="1.0"?>
<toolbox>
<tool>
<key>date</key>
<scope>application</scope>
<class>org.apache.velocity.tools.generic.DateTool</class>
</tool>
<tool>
<key>math</key>
<scope>application</scope>
<class>org.apache.velocity.tools.generic.MathTool</class>
</tool>
</toolbox>
其实就是将一个标准时间和数学计算的class加载到viewServlet里,使得VTL可以处理简单的计算和时间显示:>
以上完成velocity的VTL配置。
3、重启tomcat,完成配置
4、写vm,验证vm运行结果
//HelloVelocity.vm
<html>
<body>
#set( $foo = "Velocity" )
Hello $foo World!
</body>
<html>
验证结果:
http://localhost:8888/webDemo/Velocity/HelloVelocity.vm
Hello Velocity World!
附录:
1、Velocity Tools 是 Velocity 模板引擎的一个子项目,用来将
Velocity 与 Web开发环境集成的工具包。例如你可以利用 VelocityTools 来集成 Velocity 和 Struts 框架,同时
VelocityTools 还提供 Velocity 的布局模板,以及很多常用的工具包。[1]
Velocity之Hello World(tomcat下配置Velocity)的更多相关文章
- Tomcat 下配置一个ip绑定多个域名
原文:http://pkblog.blog.sohu.com/68921246.html 在网上找了半天也没找到相关的资料,都说的太含糊.本人对tomcat下配置 一ip对多域名的方法详细如下,按下面 ...
- 【CAS单点登录视频教程】 第04集 -- tomcat下配置https环境
目录 ----------------------------------------- [CAS单点登录视频教程] 第06集[完] -- Cas认证 学习 票据认证FormsAuthenticati ...
- 在Tomcat下配置Solr 4.x 版本
solr是一款非常优秀的全文检索服务器,最新版本在配置和前台页面上都做了较大的改动, 所以对用惯了老版本的朋友们来说,再重新配置新版本的solr,无疑又是一件痛苦的事情. 配置环境:windows ...
- tomcat下配置https环境
在网上搜了一下,内容不是非常完好. 现进行整理,做个学习笔记,以备以后使用. (1)进入到jdk下的bin文件夹 (2)输入例如以下指令"keytool -v -genkey -alias ...
- Springmvc +JNDI 在Tomcat下 配置数据源(转)
一. 简介 jndi(Java Naming and Directory Interface,Java命名和目录接口)是一组在Java应用中访问命名和目录服务的API.命名服务 ...
- tomcat 下配置ajax 跨域 tomcat font face 跨域 java跨域
tomcat ajax跨域和css字体 font face 跨域一样适用 CORS介绍 它在维基百科上的定义是:跨域资源共享(CORS )是一种网络浏览器的技术规范,它为Web服务器定义了一种方式 ...
- tomcat下配置https环境(windows环境)
在网上搜了一下,内容不是很完善.现进行整理,做个学习笔记,以备以后使用. (1)进入到jdk下的bin目录 (2)输入如下指令“keytool -v -genkey -alias tomcat -ke ...
- tomcat下配置https方式
[本地HTTPS]①.<Connector SSLEnabled="true" clientAuth="false" keystoreFile=" ...
- tomcat下配置jndi数据源c3p0
Tomcat下通过JNDI配置数据源,使用c3p0连接池 首先在打开tomcat找到在conf文件下,找到server.xml 在server.xml文件中找到标签 在下面添加如下配置 <Res ...
- Tomcat下配置JNDI的三种方式
最近在整理项目上的配置文件,正好看到了数据源配置,想着配置方式有多种,便趁热打铁,记录下常规的Tomcat配置数据源的方式 1.单个工程配置 找到Tomcat下的server.xml文件,在Conte ...
随机推荐
- 我真的,AI框架的编程范式怎么理解?
我给领导汇报AI框架用函数式编程好,没讲明白,说函数式就是写函数那样方便,都被领导吊飞了,啥玩意,写啥不是写函数,狗屁不通! 网上搜说用tensorflow那就是用声明式编程,用pytorch就是命令 ...
- Shell 摘抄:growpart中的参数处理
下面这段代码中,变量cur表示这次循环所要处理的参数.如果没有触发前面的选项开关,第一个参数会被赋值给$DISK,第二个参数会赋值给$PART. 强无敌!- while [ $# -ne 0 ]; d ...
- Pandas:删除最后一行
解决方案 代码 效果展示 完整代码 import pandas as pd import numpy as np df = pd.DataFrame(np.arange(12).reshape(3,4 ...
- 用python selenium提取网页中的所有<a>标签中的超级链接地址
urls = driver.find_elements_by_xpath("//a") for url in urls: print(url.get_attribute(" ...
- vlunhub笔记(二)earth
(一)信息收集 开始扫描目标机ip,目标机ip:192.168.241.135 arp-scan -l 直接访问目标 ip 192.168.241.135 发现400报错 只能先去考虑扫一下信息 ...
- VScode 中golang 基准测试 go test -bench .
目的:基准测试的主要目的是比较不同实现方式之间的性能差异,找出性能瓶颈. 1 准备以_test.go结尾文件和导入testing包 在命名文件时需要让文件必须以_test结尾,在文件中导入testin ...
- 应用性能监控工具(pinpoint)部署
Pinpoint是一款全链路分析工具,提供了无侵入式的调用链监控.方法执行详情查看.应用状态信息监控等功能.pinpoint使用HBASE储存数据. 下面介绍pinpoint部署及应用. 1. 安装 ...
- Sealos 国内集群正式上线,可一键运行 LLama2 中文版大模型!
2023 年 7 月 19 日,MetaAI 宣布开源旗下的 LLama2 大模型,Meta 首席科学家.图灵奖得主 Yann LeCun 在推特上表示 Meta 此举可能将改变大模型行业的竞争格局. ...
- Python Web:Django、Flask和FastAPI框架对比
Django.Flask和FastAPI是Python Web框架中的三个主要代表.这些框架都有着各自的优点和缺点,适合不同类型和规模的应用程序. Django: Django是一个全功能的Web框架 ...
- 数据可视化【原创】vue+arcgis+threejs 实现海量建筑物房屋渲染,性能优化
本文适合对vue,arcgis4.x,threejs,ES6较熟悉的人群食用. 先报备一下版本号 "vue": "^2.6.11" "@arcgis/ ...