只需2分钟,简单构建velocity web项目

Velocity是一个基于java的模板引擎(template engine)。它允许任何人仅仅简单的使用模板语言(template language)来引用由java代码定义的对象

  velocity的语法非常简单。这里不多介绍。

  我们平时的web项目,通常的开发流程是前端写好静态页面。后端将静态页面改成jsp,在相应的需要替换数据的地方,使用 jstl、EL表达式等接收action模块传递过来的数据。一般使用action来处处理参数,调用service层来处理业务逻辑,service层调用dao层从数据库取数据。我们可以看到,大体上就是后端发送数据给前端。

  这里一般会有一个很大的问题。如果业务变更,例如一个页面本来要显示一个表格,现在需要显示3个表格,另外的2个表格是从之前的其他页面合并的。mvc模式的好处就是,此时,除了页面的改动之外,做业务逻辑处理的service层和dao层,都不需要变化,只需要改动相应的action层,调用所需的service模块,将所需要的数据输出。

  而如果使用velocity,除了页面的改动之外,其他都不需要改动。

  velocity做web项目与我们平时的项目最大的不同是由前端从后端拿数据。需要什么就拿什么。我们完全可以通过velocity把前端和后端完全分离开来。

  下面使用一个简单的例子模拟一下velocity的这种思想。

  (由于velocity自身并不提供任何web相关的功能,它只是通过模板生成格式文档。但是,开发web应用的时候,需要有一个框架来处理HTTP请求。velocity有一个非常好的子项目velocity-tools,使用它的VelocityViewServlet可以非常方便的实现这个功能。如下)

  1、依赖包只有2个:最新的 velocity-1.6.2.jar 和 velocity-tools-2.0.jar,网址:http://velocity.apache.org/download.cgi

  2、首先看一下我们的web.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
                         "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>   

    <servlet>
        <servlet-name>velocity</servlet-name>
        <servlet-class>org.apache.velocity.tools.view.VelocityViewServlet</servlet-class>
        <init-param>
            <param-name>org.apache.velocity.toolbox</param-name>
            <param-value>/WEB-INF/conf/velocity-toolbox.xml</param-value>
        </init-param>
        <load-on-startup>3</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>velocity</servlet-name>
        <url-pattern>*.vm</url-pattern>
    </servlet-mapping>
    <welcome-file-list>
        <welcome-file>index.vm</welcome-file>
    </welcome-file-list>
</web-app>

  3、然后看一下简单的页面:

<html>
<body>  

this is the word : $mytool.getHello()  

</body>
</html> 

  4、接下来是最重要的velocity-toolbox.xml 类,这里的工具类就是在页面可以直接调用的类了。如下:

<?xml version="1.0" encoding="UTF-8"?>

<toolbox>

  <tool>
     <key>mytool</key>
     <scope>request</scope>
     <class>com.chandler.tool.MyTool</class>
  </tool>

</toolbox>

  指定了请求到来时的工具类实例的生命周期为request

  5、OK,就这样,可以访问了,如下:

  

  可以看到,velocity的这种特性,使得它开发小型的网站变得非常便捷!很大的提高了开发效率!

  如果文中有什么不对的地方,欢迎指正!谢谢!

  转载请注明出处:http://www.cnblogs.com/zrtqsk/p/4010840.html 谢谢!

时间: 2024-10-20 03:01:42

只需2分钟,简单构建velocity web项目的相关文章

如何对比Python和Java,只需三分钟告诉你!

Java和Python两门语言都是目前非常热门的语言,可谓北乔峰南慕容,二者不分上下,棋逢对手.但是对于初学者来说,非常困惑,因为时间和精力有限,上手必须要先学一门,到底选那个好呢,今天3分钟带你透彻了解. 1.运行速度 java是静态语言静态编译的,速度上要比Python快的很多,而Python动态类型语言,一边执行一边编译,速度要上慢一些. 2.对Legacy代码的支持 对于legacy代码的支持,由于Java大量的用于电商,互联网后端,银行等大型系统,所以对于legacy的代码的数量要远大

Java是什么?只需5分钟,了解java必须要知道的知识点

不清楚Java是什么?只需5分钟,了解java必须要懂的知识点 Java吸取了C++面向对象的概念,将数据封装于类中,利用类的优点,实现了程序的简洁性和便于维护性.下面是我收集的Java必备基础知识点,希望对你有用. 1. 简述Java的基本历史 Java起源于SUN公司的一个GREEN的项目,其原先目的是:为家用消费电子产品发送一个信息的分布式代码系统,通过发送信息控制电视机.冰箱等. 2. Java特点 简单的.面向对象的.分布式的.安全的.稳定的.与平台无关的.可解释的.多线的.动态的语言

二手手机回收:估价+回收只需3分钟

一台烹饪机器人2分半钟炒出一盘虾仁;只需要喷一次水,就能让道路扬尘大幅降低的抑尘剂……昨日,第八届北京国际节能环保展在北京展览馆开幕,众多跟市民生活息息相关的高科技环保产品亮相. 据了解,展览将持续到6月11日,市民可凭有效证件前往免费观展. 路面固化剂: 一吨防尘剂可省4万吨水 在低碳环保节能展上,一种用来防止道路扬尘的路面固化剂成为热门. 首创集团北京精诚博桑科技公司副总经理徐若松介绍说,现在降低城市路面扬尘主要靠喷水.但是,几十分钟后,喷到路面上的水就被蒸发了,降尘效果不明显.如果将这款高

MyEclipse10.0构建maven web项目

1.安装配置maven 为了使用maven构建web项目,我们必须先安装部署好maven环境.请看上一篇<maven的安装与配置>文章. 2.在MyEclipse中配置maven 打开MyEclipse->window->搜索maven,找到Maven4MyEclipse->选择Installations,点击Add按钮把已经安装好的maven目录添加进来.如图: 配置好之后,可以点击User Settings,MyEclipse通过setting.xml配置文件已经把相关的

Maven构建Hadoop Web项目

使用Maven构建Hadoop Web项目,此项目是一个样例Demo,方便开发专注于后台以及Hadoop开发的人员在其上构建自己定制的项目.该Demo提供了两个样例: 查看HDFS文件夹内容及其子文件/夹: 运行WordCount MR任务: 项目下载地址:Maven构建Hadoop Web项目 系统软件版本 Spring4.1.3 Hibernate4.3.1 Struts2.3.1 hadoop2.6 pure0.6 jdk1.7 tomcat7 myeclipse10.0 jQuery1.

一个简单的java web 项目

本文实现一个简单的 java web 项目,包括以下5个功能: 1. 登录 用户默认主页index.jsp , 可选择登录功能,输入用户名和密码,若登录成功,则进入产品管理总页面main.jsp.若不成功仍退回index.jsp 2. 注册 用户默认主页index.jsp ,  可选择注册功能 ,若注册,则进入 register.jsp 3. 管理产品(增加,删除,查看) 登录成功后,进入产品管理总页面main.jsp.第一次进入main.jsp,默认显示所有产品列表.在此页面上更实现 查询某个

Spring Boot构建的Web项目如何在服务端校验表单输入

本文首发于个人网站:Spring Boot构建的Web项目如何在服务端校验表单输入 这个例子用于演示在Spring Boot应用中如何验证Web 应用的输入,我们将会建立一个简单的Spring MVC应用,来读取用户输入并使用validation注解来检查,并且当用户输入错误时,应用需要再屏幕上显示错误信息提示用户重新输入. 首先构建Maven项目,该项目的pom文件内容如下: <?xml version="1.0" encoding="UTF-8"?>

maven构建java web项目(eclipse原理同)

maven构建java web项目 1.  mvn archetype:generate -DarchetypeArtifactId=maven-archetype-webapp 如果是用eclipse,则可以新建webapp的maven工程.以下同. 2. 再pom.xml中加入 <build> <finalName>gswm-web</finalName> <plugins> <plugin> <groupId>org.apach

Java持续集成(4) &ndash; 构建Maven Web项目

使用jenkins构建Maven Web项目的一般步骤 1 jekins从svn拉取代码 2 使用Apache Tomcat Maven Plugin将工程部署到Tomcat容器 具体配置过程 1 新建任务 输入一个item名称,选择"构建一个自由风格的软件项目",点击OK 2 配置源码管理 在源码管理中选择Subversion,填写要构建Maven Web工程的svn地址 3 配置构建 在构建中,点击增加构建步骤,选择'Invoke top-level Maven targets'