Veloctiy入门的实例

刚学习mybatis-plus,因为里面有用到velocity,就百度了一下,发现velocity不仅是一个基于Java的模板引擎,还可以用来做许多事情,例如源代码生成,自动Email等功能,详细介绍大家可以去看这篇文章

下面是我打的项目,先来一张目录截屏
目录截屏

MyVelocityViewServlet.java

package com.sve.web;

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 MyVelocityViewServlet extends VelocityViewServlet {

    protected Template handleRequest(HttpServletRequest request,HttpServletResponse response,Context ctx) {
        //往Context容器存放变量
        ctx.put("fullName", "zhongxiaolan");

        //页可以往request域中存值
        request.setAttribute("anotherName", "xlli");

        //forward到指定模板
        return getTemplate("vm/test.vm");

    }
}

配置velocity.properties

## 日志文件  
runtime.log.logsystem.class=org.apache.velocity.runtime.log.SimpleLog4JLogSystem
runtime.log.logsystem.log4j.category=velocity
runtime.log.logsystem.log4j.logger=velocity
## 设置模板文件加载器,webapp从应用根目录加载
resource.loader = webapp
webapp.resource.loader.class = org.apache.velocity.tools.view.WebappResourceLoader
## 模板路径,根目录下的vm文件夹
webapp.resource.loader.path = /vm
##设置编码
input.encoding = UTF-8
output.encoding = UTF-8

编写vm文件

#set($greet = "hello")
<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>

     <p>$!{greet} $!{fullName}</p>
     <p>my another name is $!{anotherName}</p>

</body>
</html>

最后配置web.xml

<servlet>
<servlet-name>MyVelocityServlet</servlet-name>
<servlet-class>com.sve.web.MyVelocityViewServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>MyVelocityServlet</servlet-name>
<url-pattern>/servlet/myVelocityServlet</url-pattern>
</servlet-mapping>

访问路径为:http://localhost:8080/velocity/servlet/myVelocityServlet

使用到的包(包大家就自己去找吧)
包

学习一下velocity真的感觉自己要被气死,老是报错,不是找不到包,就是找不到资源文件,都要疯掉了。。。不过还好坚持下来了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值