web.jars:以jar包的方式引入静态资源:https://www.webjars.org/
访问时,只需要写web.jars下面资源的名称。...velocity的做法使得在velocity的模版中大量的与Java对象交互,违背了简单的原则,尽管也可以将代码转入控制器中实现
freemarker能做到,而velocity无法做到的:
日期和数字的支持...:
比较和格式化显示日期或者时间值
执行运算和比较,对任意数量的类型,包括精度类型,而不仅仅是整数
国际化:
格式数字区域,各种各样的内置和自定义数字格式模式
格式日期地区和时区,各种各样的内置和定制的日期格式模式...,包括原始的和非原始的指数
获取数组的长度
宏定义:
宏调用可以通过位置或名称进行参数传递
宏的参数可以设定默认值,在调用宏时如果没有指定该参数,则使用默认值代替
通过 body... 可以支持宏的嵌套
通过文本表达的 “宏的名称” 来直接调用某个宏
宏允许先使用再定义
宏可以定义局部变量
命名空间:
使用多个名称空间的变数.