velocity配置文件详解


在velocity的发布方包中有一个velocity.properties(位于    org.apache.velocity.runtime.defaults package下,
文件定义了velocity的配置信息org.apache.velocity.runtime.RuntimeConstants中定义了key值)

#模板编码:

input.encoding=ISO-8859-1//模板输入编码
output.encoding=ISO-8859-1 //模板输出编码

#foreach配置

directive.foreach.counter.name= velocityCount //计数器名称
directive.foreach.counter.initial.value = 1 //计数器初始值
directive.foreach.maxloops = -1 //最大循环次数,-1为默认不限制 directive.foreach.iterator.name = velocityHasNex //迭代器名称

#set配置

directive.set.null.allowed = false //是否可设置空值

#include配置

directive.include.output.errormsg.start= <!-- include error : //错误信息提示开始字符串
directive.include.output.errormsg.end = see error log --> //错误信息提示结束字符串

#parse配置

directive.parse.max.depth = 10 //解析深度

#模板加载器配置

resource.loader = file //模板加载器类型,默认为文件,可定义多个

file.resource.loader.description= Velocity File Resource Loader //加载器描述
file.resource.loader.class =Velocity.Runtime.Resource.Loader.FileResourceLoader //加载器类名称
file.resource.loader.path = . //模板路径
file.resource.loader.cache = false //是否启用模板缓存
file.resource.loader.modificationCheckInterval = 2 //检查模板更改时间间隔

宏配置

velocimacro.library//指定宏定义文件的位置

velocimacro.permissions.allow.inline= true //是否可以行内定义
velocimacro.permissions.allow.inline.to.replace.global = false //是否可以用行内定义代替全局定义
velocimacro.permissions.allow.inline.local.scope = false //行内定义是否只用于局部

velocimacro.context.localscope= false //宏上下文是否只用于局部
velocimacro.max.depth = 20 //解析深度

velocimacro.arguments.strict= false //宏参数是否启用严格模式

#资源管理器配置

resource.manager.class= Velocity.Runtime.Resource.ResourceManagerImpl //管理器类名称
resource.manager.cache.class = Velocity.Runtime.Resource.ResourceCacheImpl //缓存器类名称

#解析器池配置

parser.pool.class= Velocity.Runtime.ParserPoolImpl //解析池类名称
parser.pool.size = 40 //初始大小

#evaluate配置

directive.evaluate.context.class= Velocity.VelocityContext //上下问类名称

#可插入introspector配置
runtime.introspector.uberspect = Velocity.Util.Introspection.UberspectImpl //默认introspector类名称

#日志配置

runtime.log  =  velocity.log

用以指定 Velocity 运行时日志文件的路劲和日志文件名,如不是全限定的绝对路径,系统会认为想对于当前目录.

runtime.log.logsystem

这个参数没有默认值,它可指定一个实现了org.apache.velocity.runtime.log.LogSystem.接口的自定义日志处理对象给 Velocity。这就方便将 Velocity 与你己有系统的日志机制统一起来

runtime.log.logsystem.class=  org.apache.velocity.runtime.log.AvalonLogSystem

上面这行,是一个示例来指定一个日志记录器.

runtime.log.error.stacktrace=  false

runtime.log.warn.stacktrace=  false

runtime.log.info.stacktrace=  false

这些是错误消息跟踪的开关.将会生成大量、详细的日志内容输出.

runtime.log.invalid.references=  true

当一个引用无效时,打开日志输出.  在生产系统运行中,这很有效,也是很有用的调试工具.