好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識(shí)庫(kù) > JAVA velocity模板引擎使用實(shí)例

JAVA velocity模板引擎使用實(shí)例

熱門標(biāo)簽:杭州ai語音電銷機(jī)器人功能 電銷機(jī)器人是有一些什么技術(shù) 北票市地圖標(biāo)注 商洛電銷 四川保險(xiǎn)智能外呼系統(tǒng)商家 杭州語音電銷機(jī)器人軟件 地圖標(biāo)注線上教程 高德地圖標(biāo)注樣式 電銷機(jī)器人好賣么

velocity使用1.7版本。 在win7下使用intelliJ IDEA建立一基于tomcat的web app項(xiàng)目,命名為todo_web,設(shè)置path為/todo,導(dǎo)入velocity相關(guān)jar包。只導(dǎo)入velocity-1.7.jar這個(gè)包可能會(huì)報(bào)錯(cuò),根據(jù)提示再導(dǎo)入velocity自帶的其他包。 項(xiàng)目結(jié)構(gòu)如下:



測(cè)試Tomcat

index.jsp內(nèi)容如下:

復(fù)制代碼 代碼如下:

%-- Created by IntelliJ IDEA. --%>
%@ page contentType="text/html;charset=UTF-8" language="java" %>
html>
  head>
    title>/title>
  /head>
  body>
           %
               out.print("hi,todo");
           %>
  /body>
/html>

HelloWorld.java內(nèi)容如下:
復(fù)制代碼 代碼如下:

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;   
public class HelloWorld extends HttpServlet {
    /**
     *
     * @param request
     * @param response
     * @throws IOException
     * @throws ServletException
     */
    @Override
    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws IOException, ServletException {
        response.setContentType("text/html");
        PrintWriter out = response.getWriter();
        out.println("html>");
        out.println("head>");
        out.println("title>Hi!/title>");
        out.println("/head>");
        out.println("body>");
        out.println("h1>Hello World!!!/h1>");
        out.println("/body>");
        out.println("/html>");
    }
}

在web.xml中加入以下內(nèi)容:
復(fù)制代碼 代碼如下:

servlet>
    servlet-name>hi/servlet-name>
    servlet-class>HelloWorld/servlet-class>
/servlet>
servlet-mapping>
    servlet-name>hi/servlet-name>
    url-pattern>/hi/url-pattern>
/servlet-mapping>

運(yùn)行項(xiàng)目,在http://localhost:8080/todo和http://localhost:8080/todo/hi中可以看到效果。


使用velocity

下面開始使用velocity模板引擎,在src下建立目錄templates,在templates目錄下建立文件test.vm,內(nèi)容如下:

復(fù)制代碼 代碼如下:

html>
head>
meta http-equiv="Content-Type" content="text/html; charset=utf-8">
/head>
body>
#set( $this = "Velocity")
$this is great!  br/>
$name  br/>
hi  , i am letian
h1>你好/h1>
/body>
/html>

在src目錄下新建java文件MyVelocity01.java:
復(fù)制代碼 代碼如下:

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import org.apache.velocity.app.Velocity;
import org.apache.velocity.app.VelocityEngine;
import org.apache.velocity.VelocityContext;
import java.util.Properties;
public class MyVelocity01 extends HttpServlet {
    @Override
    public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws IOException, ServletException {
        request.setCharacterEncoding("UTF-8");
        response.setContentType("text/html;charset=UTF-8");
        PrintWriter out = response.getWriter();
        Properties properties=new Properties();
        properties.setProperty("resource.loader", "class");
        properties.setProperty("class.resource.loader.class", "org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader");
        //properties.setProperty("input.encoding", "UTF-8");
        //properties.setProperty("output.encoding", "UTF-8");
        properties.setProperty(Velocity.ENCODING_DEFAULT, "UTF-8");
        properties.setProperty(Velocity.INPUT_ENCODING, "UTF-8");
        properties.setProperty(Velocity.OUTPUT_ENCODING, "UTF-8");
        VelocityEngine velocityEngine = new VelocityEngine(properties);
        VelocityContext context=new VelocityContext();
        context.put("name", "test");
        StringWriter sw = new StringWriter();
        velocityEngine.mergeTemplate("templates/test.vm", "utf-8", context, sw);
        //velocityEngine.mergeTemplate("templates/test.vm", "utf-8", context, sw);      //這樣就會(huì)出現(xiàn)兩次
        out.println(sw.toString());
    }
}

配置web.xml:

復(fù)制代碼 代碼如下:

!--MyVelocity-->
servlet>
    servlet-name>ve/servlet-name>
    servlet-class>MyVelocity01/servlet-class>
/servlet>
servlet-mapping>
    servlet-name>ve/servlet-name>
    url-pattern>/ve/url-pattern>
/servlet-mapping>

重新部署,瀏覽器訪問http://localhost:8080/todo/ve可以看到效果。

簡(jiǎn)單介紹velocity

velocity是一個(gè)基于java的模板引擎,有三種文件加載模板方式: 1、從文件路徑加載 2、從類路徑(MyVelocity01.java使用該方法) 3、從jar文件加載 開始接觸velocity時(shí)可能會(huì)在加載模板上遇到問題。

如何向模板文件傳遞變量: 模板本身可以定義變量,例如在test.vm中定義了變量$this,java代碼也可以給模板傳遞變量,例如test.vm中的變量$name便是VelocityContext實(shí)例傳遞過去的。同時(shí)velocity也支持迭代對(duì)象,例如: 我們?cè)贛yVelocity01.java中導(dǎo)入java.util.Vector,將代碼:

復(fù)制代碼 代碼如下:

context.put("name", "test");

改為:
復(fù)制代碼 代碼如下:

Vector v = new Vector(); 
v.addElement("Harry"); 
v.addElement("John"); 
String[] names = {"Harry", "John"};
context.put("names1", v);
context.put("names2", names);

將test.vm內(nèi)容改為:
復(fù)制代碼 代碼如下:

h1>hello/h1>
#foreach($name in $names1)
    $name   br/>
#end
#foreach($name in $names2)
    $name   br/>
#end

velocity還支持map容器,支持使用#include("")引入靜態(tài)模板,#parse("模板名")引入動(dòng)態(tài)模板。

如果想不開要用java MVC寫網(wǎng)站的話,使用servlet + velocity是一個(gè)小巧靈活的選擇。

您可能感興趣的文章:
  • 詳解使用Mybatis-plus + velocity模板生成自定義的代碼
  • c#基于NVelocity實(shí)現(xiàn)代碼生成
  • SiteMesh如何結(jié)合Freemarker及velocity使用
  • Vue中JS動(dòng)畫與Velocity.js的結(jié)合使用
  • 如何解決SpringBoot2.x版本對(duì)Velocity模板不支持的方案
  • SpringBoot與velocity的結(jié)合的示例代碼
  • 聊聊JS動(dòng)畫庫(kù) Velocity.js的使用
  • springMVC+velocity實(shí)現(xiàn)仿Datatables局部刷新分頁方法
  • 詳解velocity模板使javaWeb的html+js實(shí)現(xiàn)模塊化
  • Mybatis velocity腳本的使用教程詳解(推薦)
  • html文件中jquery與velocity變量中的$沖突的解決方法
  • Java 如何使用Velocity引擎生成代碼

標(biāo)簽:西藏 云浮 紅河 江西 貴州 青島 宿州 丹東

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《JAVA velocity模板引擎使用實(shí)例》,本文關(guān)鍵詞  JAVA,velocity,模板,引擎,使用,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《JAVA velocity模板引擎使用實(shí)例》相關(guān)的同類信息!
  • 本頁收集關(guān)于JAVA velocity模板引擎使用實(shí)例的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 男女激情大尺度无遮挡| japanese色系tube日本护士| fsn游戏18画面补魔无和谐| 久久久Av人妻互伦无码菜单| 国产真实乱系列2孕妇| 烫h 忍一下h| 免费网站一级床片40分钟视频| 好大好紧好爽| 亚洲欧美偷国产日韩| 精品操| 厨房里被?的最深的一天在线阅读 挺进朋友人妻张婉莹身体 | 国产片三级| 我的相亲对象是一个强硬的问题学生| 少婦高潮久久久久久| 男人把??伸入女人??| 国产在线成人精品| 999久久精品国产| 宝贝我要添你下面的水密| 女张腿男生桶app免费看| 免费无码婬片AAAA片免费视频| 秋霞日韩久久演员表| 成人亚洲性情网站www在线观看 | chinesefree高潮抽搐| 欧美特黄一区二区三区| 日韩免费一区二区三区在线| 18一19xxx日本护士| 丁香婷婷色综合| 夜月直播app下载视频| 国产自产亚洲精品国产| 性夜影院爽黄A片免费播放 | 强肉乱公妇| 性色国产成人久久久精品一区二区| 麻豆精品秘?国产传媒MV男同| 综合网天天操天天射| 好想被狂躁狂躁| 啊灬啊灬啊灬快好深公交| 美女视频黄8频a美女大全| 黑人超长巨大XXXXXXX左腾 | 消息称老熟妇乱视频一区二区| 久久99网| 超薄肉色丝袜交足高跟凉鞋|