public class VelocityTest {

public static void main(String[] args) {
Properties p = new Properties();
p.put("file.resource.loader.class","org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader");
p.put("input.encoding","UTF-8");

Velocity.init(p);


VelocityContext context = new VelocityContext();
context.put("util", new Util());
context.put("date", new Date());

System.out.println(getContentBody(context,"template/test.vm"));
}


protected static String getContentBody(VelocityContext context,String vmFile) {

Template template = null;

try {
template = Velocity.getTemplate(vmFile);
} catch (ResourceNotFoundException rnfe) {
} catch (ParseErrorException pee) {
pee.printStackTrace();
} catch (MethodInvocationException mie) {
} catch (Exception e) {
}

StringWriter sw = new StringWriter();


template.merge(context, sw);

return sw.toString();
}

}



public class Util {


public String format(Date date) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
return sdf.format(date);
}


public static void main(String[] args) {
Util r = new Util();
System.out.println(r.format(new Date()));
}
}

test.vm

$util.format($date)