一:
绝对路劲加载:
@Override
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException {
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
Properties p = new Properties();
p.setProperty(VelocityEngine.FILE_RESOURCE_LOADER_PATH, "e://");
p.setProperty(Velocity.ENCODING_DEFAULT, "UTF-8");
p.setProperty(Velocity.INPUT_ENCODING, "UTF-8");
p.setProperty(Velocity.OUTPUT_ENCODING, "UTF-8");
Velocity.init(p);
Template template = Velocity.getTemplate("hello.vm");
Context context = new VelocityContext();
context.put("name", "test");
StringWriter writer = new StringWriter();
template.merge(context, writer);
out.println(writer.toString());
}
二:
相对路劲加载(
classpath目录):
@Override
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException {
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
Properties p = new Properties();
p.setProperty("resource.loader", "class");
p.setProperty("class.resource.loader.class", "org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader");
p.setProperty(Velocity.ENCODING_DEFAULT, "UTF-8");
p.setProperty(Velocity.INPUT_ENCODING, "UTF-8");
p.setProperty(Velocity.OUTPUT_ENCODING, "UTF-8");
Velocity.init(p);
Template template = Velocity.getTemplate("/templates/test.vm");
Context context = new VelocityContext();
context.put("name", "test");
StringWriter writer = new StringWriter();
template.merge(context, writer);
out.println(writer.toString());
System.out.println(writer.toString());
}
文件夹目录(WEB-INF下)