博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Velocity
阅读量:5985 次
发布时间:2019-06-20

本文共 1497 字,大约阅读时间需要 4 分钟。

Velocity简介

Velocity是一个基于Java的模板引擎(template engine)。它可以让视图的设计者在web页面中引用Java代码中定义的数据对象和命令,从而使Web designers和Java开发者依照MVC思想(Model-View-Controller)开发系统,这意味着Web designers只需将精力用在视图外观设计,而Java程序员则只要关心如何写出高效简洁的Java对象以及实现业务逻辑,Velocity会将他们组装到一起。

velocity模板语言(VTL)

  • VTL声明:所有的VTL Statement都是以#开头,且包含一个指示符。
  • VTL注释:单行注释以##开头的一行文字,如要多行注释,将它们放入#*和*#之间。
  • VTL引用:变量引用(variables)、属性引用(properties)、命令引用(methods),使用符号$。           注意:模板中引用必须是通过Java Bean中的getter/setter实现的,而直接的java对象的数据域是不能直接引用的,如$foo.Name会解析到class Foo‘s                    getName()的实例方法,但不会解析到Foos类的public Name这个实例变量。
  • VTL指令(directives):模板设计者使用“引用”生成动态内容,指令——简单的说就是设计者在模板中操作Java对象,让视图设计者全部控制输出内容的格式。指令总是以#开头后面紧跟具体的指令符。
  • Velocity使用==来做比较
  • Velocity应用程序,流程分以下几步:
  1. 初始化Velocity
  2. 创建context对象
  3. 添加数据到context
  4. 选择模板
  5. 合并模板和数据,产生输出页面

在Solr中使用Velocity返回搜索结果

在Solr中可以以多种方式返回搜索结果,如单纯的文本(XML、JSON、CSV等),也可以将返回Velocity,js等格式。VelocityResponseWriter用于返回Velocity类型文本。Solr的RequestHandler  /browse,就使用了VelocityResponseWriter。在solrconfig.xml文件中配置如下:

explicit
velocity
browse
layout
EMPE

关于Velocity这个writer的定义如下:

Solr下载文件中,自带的browse模板连接:

Velocity模板依赖的Jar包,在Solr下载包中的位置为:<lib dir="../../../dist/" regex="solr-velocity-\d.*\.jar" />

在solrconfig.xml的同级目录下的velocity文件夹中,包含Velocity相关的文件。

参考资料:

https://cwiki.apache.org/confluence/display/solr/Velocity+Response+Writer

转载于:https://www.cnblogs.com/saratearing/p/5740683.html

你可能感兴趣的文章
关于authlib集成windows ad失败的分析并解决[草稿]
查看>>
DISCUZ官方论坛模仿开发日志(二)
查看>>
Java设计模式系列之策略模式
查看>>
Sql异常①
查看>>
Jquery 校验文本框只能输入负数、小数、整数
查看>>
官宣:深度剖析免费OA系统是如何盈利
查看>>
vue2.0学习笔记(一)搭建学习环境
查看>>
数据库热备产品都有哪些?各有什么优缺点?
查看>>
生成树协议(STP)
查看>>
hadoop大数据基础框架技术详解
查看>>
Apache日志分割&日志分析
查看>>
JVM内存结构 VS Java内存模型 VS Java对象模型
查看>>
__main__:1: Warning: Unknown table 'employ' 0L
查看>>
Linux练习题-文件查找
查看>>
python bottle 简介
查看>>
设计微服务的最佳实践
查看>>
后缀.COLORIT勒索病毒分析和解决方案,.COLORIT勒索病毒如何处理
查看>>
oracle数据库命令-持续更新
查看>>
http://cuiqingcai.com/993.html
查看>>
redis安装使用
查看>>