美文网首页
新手入门Velocity--01

新手入门Velocity--01

作者: Tomy_Jx_Li | 来源:发表于2018-02-28 19:47 被阅读26次

            首选网上有很多教程,我这里用的是Velocity教程 - 简书。本身教程可以,但是有很多模糊不清楚的地方。我这里踩了很多坑。所以这里将我踩的坑扒出来,如果有人能用到最好。

            在进行velocity的web开发尝试中。web.xml的配置需要注意一点。教程中只是说了要配置velocity.properties的配置。没有说杂么去加载它。我这里采用的是在web.xml中进行配置的加载方式。

            测试项目结构如图:

            其中教程中需要修改的文件有:

            MyVelocityViewServlet:

    packagecom.jiyx.test.servlet;

    importorg.apache.velocity.Template;

    importorg.apache.velocity.context.Context;

    importorg.apache.velocity.tools.view.servlet.VelocityViewServlet;

    importjavax.servlet.http.HttpServletRequest;

    importjavax.servlet.http.HttpServletResponse;

    /**

    *@authorjiyx

    *@create2018-02-28-16:14

    */

    public classMyVelocityViewServletextendsVelocityViewServlet {

    @Override

    protectedTemplate handleRequest(HttpServletRequest request, HttpServletResponse response, Context ctx) {

    ctx.put("name","jiyx");

    request.setAttribute("age",28);

    returngetTemplate("/vm/test.vm"); // 主要变换在这里

    }

    }

            velocity.properties

    ##设置模板文件加载器,webapp从应用根目录加载

    resource.loader=webapp

    #webapp.resource.loader.class = org.apache.velocity.tools.view.WebappResourceLoader

    ##因为我的项目结构可能和教程提供人的项目结构不同,这里直接用classPath加载器

    webapp.resource.loader.class=org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader  ## 主要变化在这里

    ##模板路径,根目录下的vm文件夹

    webapp.resource.loader.path=/vm

    ##设置编码

    input.encoding=UTF-8

    output.encoding=UTF-8

            web.xml

    "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"

    "http://java.sun.com/dtd/web-app_2_3.dtd";>

    Archetype Created Web Application

    MyVelocityServlet

    com.jiyx.test.servlet.MyVelocityViewServlet

    org.apache.velocity.properties

    /velocity.properties

    MyVelocityServlet

    /servlet/myVelocityServlet

    这几个文件修改完成之后,项目才能正常访问。

    相关文章

      网友评论

          本文标题:新手入门Velocity--01

          本文链接:https://www.haomeiwen.com/subject/qjbixftx.html