public class VelocityTest {
/**
* $!(var):如果有值则输出,如果为空,则不显示;
* <p>
* ${var}:如果有值则输出,如果为空,则将该代码原样输出;
*/
public static void main(String[] args) {
VelocityEngine ve = new VelocityEngine();
String path = VelocityTest.class.getResource("/").getPath();
VelocityContext vc = new VelocityContext();
Properties properties = new Properties();
properties.setProperty("file.resource.loader.path", path);
ve.init(properties);
Template template = ve.getTemplate("hello.vm");
vc.put("start", "<html>hello</html></br>");
vc.put("name", "velocity");
StringWriter writer = new StringWriter();
template.merge(vc, writer);
System.out.println(writer.toString());
}
}
hello.vm放在resources下面,内容如下:
$!{start}
hi!
$!{name}
Velocity是一个模板,主要用途:
- 前后端分离时,后端controller跳转使用,可以把Velocity配置成静态主页例如:index.vm,里面进行js,css等文件的加载
- 大数据处理时可以写sql模板