Java+Velocity模板引擎集成插件到Eclipse及使用例子
一.因为我用的是当前最新的Eclipse4.5,Eclipse中安装集成VelocityEclipse插件之前需要先安装其支持插件:Eclipse 2.0 Style Plugin Support
1.安装地址:http://download.eclipse.org/eclipse/updates/4.5
2.安装示例图:

接下来:




二、接下来就要在线安装VeloEclipse插件了
1.在线安装地址:http://propsorter.sourceforge.net/veloeclipse
2.在线安装可能不成功,推荐使用离线安装,地址:http://pan.baidu.com/s/1jHSnVUm,下载完成后把features目录和plugins目录下的所有文件放到eclipse文件夹下的对应目录下重启即可。
3.在线安装详细步骤:

接下来:

安装完成直接在弹出的对话框中点击yes,重启Eclipse就可以了。
修改vm文件默认javascript代码颜色:window -> preferences -> Veloeclipse ->Editor ->右侧的script code,选择颜色,点击Apply。
三、把velocity运用到实际项目中
1.下载velocity所需的jar文件:velocity-1.7.zip 和 velocity-tools-2.0.zip,下载地址:http://mirror.bit.edu.cn/apache//velocity/tools/2.0/velocity-tools-2.0.zip,如图所示:

然后把velocity-1.7.jar放在项目的\WebRoot\WEB-INF\lib\下
再把velocity-tools-2.0.zip中所有的jar文件放在项目的\WebRoot\WEB-INF\lib\下
最后:
1.创建Dynamic Web Project
2.在WebRoot目录下新建hello.vm,内容如下:
<html>
<body>
<p>Hello, $var !</p>
</body>
</html>
3.在src目录下新建Hello.java,内容如下:

package com.turtle.homework; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import org.apache.velocity.Template;
import org.apache.velocity.context.Context;
import org.apache.velocity.tools.view.VelocityViewServlet; public class Hello extends VelocityViewServlet {
protected Template handleRequest(HttpServletRequest request, HttpServletResponse response, Context ctx) {
ctx.put("var","Turtle");//给$var变量赋值为"Turtle"
return getTemplate("hello.vm");//模板名称
}
}

4.编辑WebRoot/WEB-INF/web.xml,改成如下:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
id="WebApp_ID" version="3.1"> <display-name>Hello</display-name>
<welcome-file-list>
<welcome-file>hello.html</welcome-file>
</welcome-file-list> <servlet>
<servlet-name>HelloName</servlet-name> <!-- 这个servlet-name要和下面那个servlet-name相同,但不一定和class相同 -->
<servlet-class>Hello</servlet-class> <!-- 如果你有包名就是com.a.Hello -->
<init-param>
<param-name>org.apache.velocity.properties</param-name>
<param-value>/WEB-INF/velocity.properties</param-value> <!-- velocity配置文件 -->
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>HelloName</servlet-name>
<url-pattern>/hello.html</url-pattern> <!-- 当你访问hello.html时就运行Hello.java这个类,所以你可以改成其它文件即可 -->
</servlet-mapping>
</web-app>

5.编辑WebRoot/WEB-INF/velocity.properties文件(这段代码是为了将编码改成UTF-8)
input.encoding=utf-8
output.encoding=utf-8
default.contenttype=text/html;charset\=utf-8
6.运行工程,访问http://localhost:8080/工程名/hello.html
Java+Velocity模板引擎集成插件到Eclipse及使用例子的更多相关文章
- velocity模板引擎学习(4)-在standalone的java application中使用velocity及velocity-tools
通常velocity是配合spring mvc之类的框架在web中使用,但velocity本身其实对运行环境没有过多的限制,在单独的java application中也可以独立使用,下面演示了利用ve ...
- java开源模板引擎
Velocity Velocity是一个基于java的模板引擎(template engine).它允许任何人仅仅简单的使用模板语言(template language)来引用由java代码定义 ...
- Velocity模板引擎入门
类似于PHP中的Smarty,Velocity是一个基于Java的模板引擎(template engine).它允许任何人仅仅简单的使用模板语言(template language)来引用由java代 ...
- 【转载】Velocity模板引擎的介绍和基本的模板语言语法使用
原文地址http://www.itzhai.com/the-introduction-of-the-velocity-template-engine-template-language-syntax- ...
- 使用 Velocity 模板引擎快速生成代码(zhuan)
http://www.ibm.com/developerworks/cn/java/j-lo-velocity1/ ****************************************** ...
- 转 如何使用velocity模板引擎开发网站
基于 Java 的网站开发,很多人都采用 JSP 作为前端网页制作的技术,尤其在是国内.这种技术通常有一些问题,我试想一下我们是怎样开发网站的,通常有几种方法: 1:功能确定后,由美工设计网页的UI( ...
- 使用Velocity 模板引擎快速生成代码
Velocity 模板引擎介绍 在现今的软件开发过程中,软件开发人员将更多的精力投入在了重复的相似劳动中.特别是在如今特别流行的MVC架构模式中,软件各个层次的功能更加独立,同时代码的相似度也更加高. ...
- Velocity模板引擎语法
Velocity 模板引擎介绍 Velocity是一个基于java的模板引擎(template engine).它允许任何人仅仅简单的使用模板语言(template language)来引用由java ...
- Velocity模板引擎介绍
整理下Velocity使用方法,整理比较详细用例 1 Velocity基础语法 1.1 用户和开发人员参考文档 http://velocity.apache.org/engine/releases/v ...
随机推荐
- Java中常见数据结构Set之HashSet
今天来说说Java集合中的Set系列之HashSet. Set我们众所周知的就是虑重功能, 我们平时在项目开发中也常用到这个特性的.那么Set为何能够虑重呢? 接下来我们就看下源码吧. Set ...
- EF实例创建问题
场景:CodeFirst 情况下,在控制器新建一个EF数据库对象,以便运行时进行表的初始化创建 Private DemoContext db=new DemoContext (): 问题:什么时候释放 ...
- JavaScript事件循环(Event Loop)机制
JavaScript 是单线程单并发语言 什么是单线程 主程序只有一个线程,即同一时间片断内其只能执行单个任务. 为什么选择单线程? JavaScript的主要用途是与用户互动,以及操作DOM.这决定 ...
- [Unity 设计模式]桥接模式(BridgePattern)
1.前言 继上一讲IOC模式的基础上继续本讲桥接模式,笔者感觉桥接模式是23种设计模式中桥接模式是最好用但也是最难理解的设计模式之一,23中设计模式就好武侠剧中一本武功秘籍,我们在工作过程中想要熟练运 ...
- three.js 文字显示不出来
试了下使用three.js加载文字,首先是报了一个这样的错误: Cross origin requests are only supported for HTTP.” 当时很懵逼,去网上查了查,发现是 ...
- URL.createObjectURL() 与 URL.revokeObjectURL()
.URL.createObjectURL URL.createObjectURL()方法会根据传入的参数创建一个指向该参数对象的URL. 这个URL的生命仅存在于它被创建的这个文档里. 新的对象URL ...
- 【Java IO流】对象的序列化和反序列化
对象的序列化和反序列化 1)对象序列化,就是将Object对象转换成byte序列,反之叫对象的反序列化. 2)序列化流(ObjectOutputStream),是字节的过滤流—— writeObjec ...
- tkinter第二章(添加图片,背景图片)
#插入文件图片import tkinter as tk root = tk.Tk() #创建一个标签类, [justify]:对齐方式textLabel = tk.Label(root,text=&q ...
- 201521145048《Java程序设计》第8周学习总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容. 1.2 选做:收集你认为有用的代码片段 1.2 List<Map.Entry<String, In ...
- 201521123057 《Java程序设计》 第6周学习总结
1. 本周学习总结 1.1 面向对象学习暂告一段落,请使用思维导图,以封装.继承.多态为核心概念画一张思维导图,对面向对象思想进行一个总结. 2. 书面作业 1.clone方法 1.1 Object对 ...